"’’
1.执行Python脚本的两种方法:
答: ①命令:python /home/xxx.py; ②cd /home ./xxx.py
2.阐述位、字节的关系:
答: 1Byte = 8bit 一个字节是8位
计算机处理是以字节为单位,存储是以位为单位
3.阐述ACII、Unicode、UTF-8、GBK的关系
答: Python默认脚本文件都是ACII编码
在一个module定义中,如果.py文件中含有中文字符,需要在文件首补充:
#--coding = utf-8 -- 或者 #coding = utf-8
其他的编码GBK,gb2312yekeyi
Unicode是一个字符集,UTF-8(字节可变)是Unicode(双字节)的一种,
如:汉字在Unicode中占2个字节,在UTF-8中占3个字节
ACII码是一种表示英文字符的一种编码规范
GBK专门用来解决中文编码,包含全部的中文字符,无论中英文都是双字节。在国家标准GB2312上扩展的兼容GB2312
4.请写出"李杰”用UTF-8和GBK编码所占的位数:
答: UTF-8中一个中文字符是3个字节,6;
GBK中一个中文字符是2个字节,4;
计算的是字符(Python3),计算的是字节(Python2)
5.Python的单行注释和多行注释:
答: 单行注释:#(快捷键:Ctrl+/)
多行注释:’’’ "’’
6.声明变量注意事项:
答: 和Java命名规范类似:
只能由数字、字母、下划线组成,不能由数字开头,不能使用Python关键字
7.如有变量n1 = 5,请使用int提供的方法,得到该变量最少可以有多少个二进制位组成:
答: n1 = 5
print (n1.bit_length())
还可以使用进制转换:bin(),oct(),hex(),并且返回(str)的结果带有0b,0o,0x
8.布尔值分别有什么:
答: True,False,not False
9.阅读下面代码,写出执行结果:
a = "alex”
b = a.capitalize()
print(a)
print(b)
答: alex,Alex
10.写代码,实现以下每个功能:
答:
name = "aleX "
#移除name变量两边的空格,输出结果
strip_result = name.strip()
print (strip_result)
# 判断是否是以"al"开头,输出结果
print (name.startswith("al"))
# 判断是否是以"X"结尾,输出结果
print (name.endswith("X"))
# 把name变量的"l"替换为"p",输出结果
print (name.replace("l","p"))
# 把name变量根据"l"分割,输出结果
print (name.split("l"))
# 把name变量根据"l"分割,输出结果的类型
print (type(name.split("l")))
# 把name变量变大写
print (name.upper())
# 把name变量变小写
print (name.lower())
# 把name变量小写对应变大写,大写变小写
print (name.swapcase())
# 输出name变量第2个字符
print (name[1])
# 输出name变量前3个字符
print (name[:3])
# 输出name变量的后2个字符
print (name[-2:])
#输出name变量"e"对应的下标
print (name.find("e"))
# 获取子序列,仅不包含最后一个字符。如oldboy获取oldbo
print (name[:-1])
最后一个是-1,倒数第二个-2,倒数第三个-3 …依次列推
11.字符串是否是可迭代的对象?请用for循环每一个对象:
答:
name = "alex"
for item in range(0,len(name)):
print (item,name[item])
12.代码实现一下功能
a.使用下划线将列表的么一个元素拼接成字符串,li = "alexericrain”
b.使用下划线将列表的么一个元素拼接成字符串,li = ["alex”,"eric”,"rain”]
答:
a.
li = "alexericrain"
print ("_".join(li))
b.
li = ['alex','eric','rain']
print ("_".join(li))
###########################len()和join()这两个方法对于所有的类型都可以用
13.Python2中的range和Python3中的range有什么区别?
答: Python2中range(100),会直接创建0-99这100个数字,导致内存空间突然之间变化,浪费内存。
Python3中range(100),会先生成range(0,100),等到使用range的时候才会创建数字,节省内存。
14.实现一个整数加法计算器:
如:content = input("请输入内容”)
答:input_str = input("请输入计算的加法式子>>>>”)
get_input_str = input_str.split("+")
result = 0
for item in range(len(get_input_str)):
result += int(get_input_str[item])
print (result)
15.计算用户输入的内容中有几个十进制数字,几个字母?
如:content = input("请输入内容”) #asduiaf878123jkjsfd-213928
答:input_str = input("请输入任意内容:>>>”)
num_sum = 0
char_sum = 0
for item in input_str:
if item.isdecimal():
num_sum += 1
elif item.isalpha():
char_sum += 1
else:
pass
print ("一共有" + str(num_sum) + "个数字")
print ("一共有" + str(char_sum) + "个字母")
16.简述int和9,str和"xxoo"之间的关系
答: 类和对象的关系,int和str是不同的类
17.制作趣味模板程序
需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
如:敬爱可亲的xxx,最喜欢在xxx地方做XXX
答:
input_str = input("名字,地点,爱好:(请按照格式输入)")
get_str = input_str.split(",")
print ()
print ("美丽的{}喜欢在{}学{}".format(get_str[0],get_str[1],get_str[2]))
18.制作随机验证码,不区分大小写
流程:
–用户执行程序
–显示需要输入的验证码
–用户输入验证码
–用户输入正确显示"Successfully login!",否则继续生成验证码等待用户输入
答:------随机验证码.py
import random
def main():
check_code = ''
for i in range(4):
current = random.randrange(4)
if current != i:
temp = chr(random.randint(65,90))
else:
temp = random.randint(0,9)
check_code += str(temp)
print (check_code)
if __name__ == '__main__':
main()
19.敏感词汇过滤程序,用户输入若有敏感词汇,则替换为"XXX"
答:
get_input = input("请输入>>>")
if "苍井空" in get_input:
print (get_input.replace("苍井空","xxx"))
20.制作表格,循环提示用户输入:用户名、密码、邮箱(输入长度不超过20个字符)
如果用户输入q或Q则退出输入,并将用户输入的内容以表格形式输出
答:
print ("请输入姓名 密码 邮箱:(以空格分开)")
get_input = input()
if get_input != 'q' or get_input.upper() != 'Q':
get_input_list = get_input.split(" ")
get_output = get_input_list[0] + " " + get_input_list[1] + " " + get_input_list[2]
get_input = input()
print ("姓名 密码 邮箱".expandtabs(20))
print (get_output.expandtabs(20))
"’’