1、执行 Python 脚本的两种方式

终端和交互模式

法1:
python helloword.py

法2:
ps: 执行前需给预chmod 755 helloword.py (linux系统中)
./helloword.py

2、简述位、字节的关系
1byte =8位

3、简述 ascii、unicode、utf-8、gbk 的关系

  • unicode:包含所有国家的字符编码,
  • utf-8可变长的字符编码,英文表示一个字节,中文(繁文)表示3个字节
  • ascii美国标志信息交换代码,是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,一个字符占一个字节
  • gbk全称《汉字内码扩展规范》,一个字符占用两个字节

4、请写出 “李杰”分别用 utf--‐8 和 gbk 编码所占的位数

  • 在utf-8中,一个中文字符占用3个字节
  • 在gbk中一个汉字占用2个字节
  • 李杰 = utf-8(6字节)=48
  • 李杰 = gbk(4字节)=32

5、Pyhton 单行注释和多行注释分别用什么?

  • 单行注释 #被注释内容
  • 多行注释 '''被注释内容'''

6、声明变量注意事项有那些?

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
  • ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
  • 最好不好和python内置的东西重复

7、如有一下变量 n1=5,请使用 int 的提供的方法,得到该变量少可以用多少个二进制位表示?

 n1=5
v = int(n1.bit_length())
print(v)

执行结果:

 3

8、布尔值分别有什么?

  • 一个布尔值只有True、False两种值,要么是True,要么是False
  • 可以用0或1表示

9、阅读代码,请写出执行结果

 a = "alex"
b = a.capitalize()
print(a)
print(b)

执行结果:

 alex
Alex

10、写代码,有如下变量,请按照要求实现每个功能

name="aleX"

a.移除 name 变量对应的值两边的空格,并输入移除后的内容
print(name.strip()) #aleX

b.判断 name 变量对应的值是否以"al"开头,并输出结果
print(name.startswith('al')) #False

c.判断 name 变量对应的值是否以"X"结尾,并输出结果
print(name.endswith('X')) #False

d.将 name 变量对应的值中的“l”替换为“p”,并输出结果
print(name.replace('l','p')) #aleX

e.将 name 变量对应的值根据“l”分割,并输出结果。
print(name.split('l')) #['a', 'eX']

f.请问,上一题e分割之后得到值是什么类型(可选)
print(type(name.split('l'))) #<class 'list'>

g.将 name 变量对应的值变大写,并输出结果
print(name.upper()) #ALEX

h.将 name 变量对应的值变小写,并输出结果
print(name.lower()) #alex

i.请输出 name 变量对应的值的第 2 个字符?
print(name[1:2]) #l

j.请输出 name 变量对应的值的前 3 个字符?
print(name[:3]) #ale

k.请输出 name 变量对应的值的后 2 个字符?
print(name[-2:]) #eX

l.请输出 name 变量对应的值中“e”所在索引位置?
print(name.index('e')) #2

m.获取子序列,仅不包含后一个字符。如:oldboy则获取oldbo;root则获取roo

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = "oldboy"
n2 = n1.strip('y')
print(n2)

执行结果:

 oldbo

21、字符串是否可迭代对象?如可以请使用 for 循环每一个元素?

可以

 name = "nulige"
for i in name:
print(i)

执行结果:

 n
u
l
i
g
e

补充知识:

什么是迭代?

利用 for 循环来遍历一个列表(list)或元组(tuple),将值依次取出,这种方法我们称为迭代。

利用for语句迭代字符串,创建一个字符串,name = "nulige",然后用for语句进行迭代。

22、请用代码实现:
a.利用下划线将列表的每一个元素拼接成字符串,li="alexericrain"

 li = "alexericrain"
v = "_".join(li)
print(v)

执行结果:

 a_l_e_x_e_r_i_c_r_a_i_n

b.利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'](可选)

 li = ['alex','eric','rain']
v = "_".join(li)
print(v)

执行结果:

 alex_eric_rain

23、Python2 中的 range 和 Python3 中的 range 的区别?

python2直接就在内存中创建出来

pyhotn3没有在内存中创建出来,需要使用for循环才会创建出来

24、实现一个整数加法计算器:
如:content=input('请输入内容:')#如:5+9或5+9或5+9

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = int(input("name:"))
n2 = int(input("age:"))
info = n1+n2
print(info)

执行结果:

 name:5
age:9
14

25、计算用户输入的内容中有几个十进制小数?几个字母?

如:content=input('请输入内容:')#如:asduiaf878123jkjsfd-­‐213928

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige number_null = ""
name = "123456asdfsdf"
str_null = ""
for i in name:
if i.isdecimal(): #判断i的值是不是数字
number_null += i #如果i的值是数字的话,则加入到number_null
elif i.isalpha(): #判断i的值是不是字母
str_null += i
print(number_null,str_null)
print(len(number_null),len(str_null))

执行结果:

 123456 asdfsdf
6 7

26、简述int和9等数字以及str和"xxoo"等字符串的关系?

数字就是整型,带“ ”的就是字符串

27、制作趣味模板程序

需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实

如:敬爱可亲的 xxx,喜欢在 xxx 地方干 xxx

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = input("name:")
n2 = input("add:")
n3 = input("hobby:")
print("敬爱的",n1,"喜欢在",n2,"安静的",n3)

执行结果:

 敬爱的 成龙 喜欢在 图书馆 安静的 看书

28、制作随机验证码,不区分大小写。

流程:
-­‐用户执行程序
-­‐给用户显示需要输入的验证码
-­‐用户输入的值
用户输入的值和显示的值相同时现实正确信息;否则继续生成随机验证码继续等待用户输入
生成随机验证码代码示例:

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige def check_code():
import random
checkcode = ''
for i in range(4):
current = random.randrange(0,4)
if current != i:
temp = chr(random.randint(65,90))
else:
temp = random.randint(0,9)
checkcode += str(temp)
return checkcode
code = check_code()
print(code) count = 0
while count < 3:
identifying_code = input("请输入验证码:")
if code == identifying_code.upper():
print("验证通过---登录成功---")
break
else:
continue
count += 1

执行结果:

 请输入验证码:lwv9
验证通过---登录成功---

29、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:
如:"苍老师"“东京热”,则将内容替换为***

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige n1 = input("请输入:")
m = str.maketrans("苍老师", "***")
a = str.maketrans("东京热", "***")
new_v = n1.translate(m).translate(a)
print(new_v)

执行结果:

 请输入:苍老师
***

30、制作表格

循环提示用户输入:用户名、密码、邮箱  (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效) 如果用户输入  q 或 Q  表示不再继续输入,将用户输入的内容以表格形式打印

 #!/usr/bin/env python
# -*- coding:utf-8 -*-
#Author: nulige W = "用户名\t密码\t邮箱\n"
while 1 == 1:
name = input("用户名:")
if name == "q" or name == "Q" or name == "no":
print(w)
break
passwd = input("密码:")
if passwd == "q" or passwd == "Q" or quit == "no":
print(w)
break
mail = input("邮箱:")
if mail == "q" or mail == "Q" or mail == "no":
print(w)
break
Name = name[0:20]
Pwd = passwd[0:20]
Mail = mail[0:20]
b = "{0}\t{1}\t{2}\n".format(Name,Pwd,Mail)
n1 = W + b
w = n1.expandtabs(20)
continue

执行结果:

 用户名:asfdsa
密码:ddd
邮箱:qq@qq.com
用户名:q
用户名 密码 邮箱
asfdsa ddd qq@qq.com

python基础--基本数据类型考试_day3的更多相关文章

  1. Python基础之数据类型

    Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...

  2. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  3. python基础一数据类型之字典

    摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...

  4. 第一节 Python基础之数据类型(整型,布尔值,字符串)

    数据类型是每一种语言的基础,就比如说一支笔,它的墨有可能是红色,有可能是黑色,也有可能是黄色等等,这不同的颜色就会被人用在不同的场景.Python中的数据类型也是一样,比如说我们要描述一个人的年龄:小 ...

  5. python基础一数据类型之集合

    摘要: python基础一中介绍数据类型的时候有集合,所以这篇主要讲集合. 1,集合的定义 2,集合的功能 3,集合的方法 1,集合的定义 list1 = [1,4,5,7,3,6,7,9] set1 ...

  6. python基础一数据类型之元祖

    摘要: python基础一中写到数据类型元祖,那么这篇主要讲元祖. 1,元祖定义 tuple1 = (1,2,'a','b') 元祖是不可变数据,所以又名只读列表.那么如何让是元祖可变呢?可以在元祖中 ...

  7. python基础一数据类型之列表

    摘要: python基础一中写到列表,那么这篇主要讲列表. 1,定义列表 2,列表.元祖.字符串都属于序列,都可以用用索引和切片. 3,列表的方法 1,定义列表 list1 = ['a','b',1, ...

  8. Python基础一数据类型之数字类型

    摘要: python基础一中提到了数据类型,这里主要讲解的是数字类型. 数字类型: 1,整型 2,长整型 3,浮点型 4,复数型 1,整型(int) 定义a = 1 通过type函数查看数据类型,整型 ...

  9. python基础(二)----数据类型

    Python基础第二章 二进制 字符编码 基本数据类型-数字 基本数据类型-字符串 基本数据类型-列表 基本数据类型-元组 可变.不可变数据类型和hash 基本数据类型-字典 基本数据类型-集合 二进 ...

随机推荐

  1. <代码整洁之道>、<java与模式>、<head first设计模式>读书笔记集合

    一.前言                                                                                       几个月前的看书笔记 ...

  2. Javascript笔记----实现Page页面右下角置顶按钮.

    从用博客开始,发现博客园中很多博友的博客中在Page右下角都有个图标,不论屏幕怎么拉伸,都始终停留在右下角.点击后页面置顶.后面想想写一个Demo来实现这种效果吧. 一. 图标右下角固定. 1.SS ...

  3. 从〇开始构架前端(NLDV框架)

    从〇开始构架前端(NLDV框架) 框架 设计模式 摘要:一个普通应用,大到微信, 小到豆瓣FM,必不可少的都包括四部分:Network.Logic.Data.View(NLDV).如何把他们组合起来, ...

  4. JavaSE之概述与基本语法

    嘛,这个本来应该发在OOP之前的,无所谓了,补发一下,这篇文章只会对JavaSE的语法做一个基本的概述而已,我会在最近新开一个新坑,也就是JavaEE系列,以后还会有Cpp(相对于C++,我还是更喜欢 ...

  5. windows下使用 linux命令好办法

    1. 安装下载 CygwinPortable一键安装包.7z 2. 把安装路径下/  [D:\cygwinportable\CygwinPortable\App\Cygwin\bin] 加到 Path ...

  6. Zookeeper的学习材料

    https://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/ https://www.zhihu.com/question/351 ...

  7. phantomjs模拟登录

    最近在做一些公司其他部门系统的后台模拟操作,但由于那边的系统最开始是外包给其他公司开发的,现在那边的开发也不知道有些post的参数是如何生成的.于是想考察下是不是可以把phantomjs这个工具给加进 ...

  8. javascript中在链表中向前(向后)移动n个节点

     1.概念 在链表上移动n个节点,我第一眼看到这个需求的时候首先想到的是当前节点.使用这个当前节点作为参考来移动,没有这个当前节点的话是没有办法在链表上前进和后退的.初始化定义链表的时候定义一个当前节 ...

  9. React Native 项目运行在 Web 浏览器上面

    React Native 的出现,让前端工程师拥有了使用 JavaScript 编写原生 APP 的能力.相比之前的 Web app 来说,对于性能和用户体验提升了非常多. 但是 React Nati ...

  10. Visual Studio 2012 cannot identify IHttpActionResult

    使用ASP.NET Web API构造基于restful风格web services,IHttpActionResult是一个很好的http结果返回接口. 然而发现在vs2012开发环境中,Syste ...