python练习2


练习题:
1、执行 Python 脚本的两种方式
终端下直接执行脚本 pyhton 1.py
交换界面执行 python
Linux下面直接执行 ./1.py 

2、简述位、字节的关系
1字节=8位
3、简述 ascii、 Unicode、 utf-­‐8、 gbk 的关系 ASCII 先出现 Unicode 后出现 utf-8 是Unicode的压缩版 gbk 再出现
4、请写出 “李杰” 分别用 utf-­‐8 和 gbk 编码所占的位数 utf-8 6字节 一个汉字3个字节 gbk 4个字节
5、 Pyhton 单行注释和多行注释分别用什么? 单行注释 # 多行注释 “”“ ”“”
6、声明变量注意事项有那些? 可以下划线,字母,数字组成 开头不能是数字或者特殊字符
7、如有一下变量 n1 = 5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示? bit_length 8、布尔值分别有什么? True False "" =>" " =>真 0 =>假 其他=>9、阅读代码,请写出执行结果 a = "alex" b = a.capitalize() print(a) print(b) 请写出输出结果: alex Alex
10、写代码,有如下变量,请按照要求实现每个功能 name = " aleX" 11.移除 name 变量对应的值两边的空格,并输入移除后的内容 print(name) v = name.strip() print(v) 12.判断 name 变量对应的值是否以 "al" 开头,并输出结果 v = name.startswith("al") print(v)
13.判断 name 变量对应的值是否以
"X" 结尾,并输出结果 v = name.endswith("X") print(v) 14.将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果 v = name.replace("l","p") print(v)
15.将 name 变量对应的值根据 “l” 分割,并输出结果。 v
= name.partition("l") print(v)
16.请问,上一题 e 分割之后得到值是什么类型(可选)? 列表
17.将 name 变量对应的值变大写,并输出结果 v
= name.upper() print(v)
18.将 name 变量对应的值变小写,并输出结果 v
= name.lower() print(v)
19.请输出 name 变量对应的值的第
2 个字符? i = name[1] print(i)
20.请输出 name 变量对应的值的前
3 个字符? i = name[2] print(i)
21.请输出 name 变量对应的值的后
2 个字符? l = len(name) print(l) i = name[4:6] print(i)
22.请输出 name 变量对应的值中 “e” 所在索引位置? index
= name.index("e") print(index)
23.获取子序列,仅不包含最后一个字符。如: oldboy 则获取 oldbo; root 则获取 roo l
= len(name) print(l) v = name[0:5] print(v)
24、字符串是否可迭代对象?如可以请使用 for 循环每一个元素? 可迭代对象 == 可以被for循环获取 name = "aaddfsafsa" for i in range(0,len(name)): print(name[i]) 25、请用代码实现: a.利用下划线将列表的每一个元素拼接成字符串, li = "alexericrain" li = "alexericrain" b = "_".join(li) print(b) b.利用下划线将列表的每一个元素拼接成字符串, li = ['alex', 'eric', 'rain'] (可选) li = ['alex', 'eric', 'rain'] b = "_".join(li) print(b) 26、Python2 中的 range 和 Python3 中的 range 的区别? python2 ,立即创建,不需要配合for循环,可以直接输出range python3,一个一个创建,需要配合for循环输出range
27、实现一个整数加法计算器: 如: content = input('请输入内容: ') # 如: 5+9 或 5+ 9 或 5 + 9 if "+" in content : a = content.split("+") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) + int(a1) print(b) elif "-" in content : a = content.split("-") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) - int(a1) print(b) elif "**" in content : a = content.split("**") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) ** int(a1) print(b) elif "*" in content : a = content.split("*") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) * int(a1) print(b) elif "//" in content : a = content.split("//") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) // int(a1) print(b) elif "/" in content : a = content.split("/") a0 = a[0].strip() a1 = a[-1].strip() b = int(a0) / int(a1) print(b) elif "%" in content : a = content.split("%") a0 = a[0].strip() a1 = a[1].strip() b = int(a0) % int(a1) print(b) else: print("sorry,This is not formula") 28、计算用户输入的内容中有几个十进制小数?几个字母? 如: content = input('请输入内容: ') # 如: asduiaf878123jkjsfd-­‐213928 a = 0 #赋值数字计算器 b = 0 #赋值字母或汉字计算器 c = len(content) for i in range(0,c): if i < c : d = content[i].isnumeric() #确定是不是数字 e = content[i].isalpha() #确定是不是字母或汉字 if d == True : #判断是否为数字为真 a += 1 elif e == True : #判断是否为字母或汉字为真 b += 1 else: continue else: print("end") print("数字",a) print("字母",b) 28、简述 int 和 9 等数字 以及 str 和 "xxoo" 等字符串的关系? int str "alex" 123 类 和 对象的关系
29、制作趣味模板程序 需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实 如:敬爱可亲的 xxx,最喜欢在 xxx 地方干 xxx test = '敬爱可亲的{0},您最喜欢在{1}这个地方干{2}' a = input("名字:") b = input("地点:") c = input("爱好:") d = test.format(a,b,c) print(d) 30、制作随机验证码,不区分大小写。 流程: -­‐ 用户执行程序 -­‐ 给用户显示需要输入的验证码 -­‐ 用户输入的值 用户输入的值和显示的值相同时现实正确信息; 否则继续生成随机验证码继续等待用户输入 生成随机验证码代码示例: #生成验证码的代码 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 while True : code = check_code() print(code) v = input(">>>>>>>") v1 = v.upper() #所有小写变大写 if code != v1 : print("验证码错误,请重新输入:") continue else: print("欢迎登录!!!!!!!") break 31、开发敏感词语过滤程序, 提示用户输入内容,如果用户输入的内容中包含特殊的字符: "苍老师" "东京热",则将内容替换为 *** a = input(">>>>>>>") a = a.replace("苍井空","***") a = a.replace("东京热","***") print(a) 32、制作表格 循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效) 如果用户输入 q 或 Q 表示不再继续输入,将用户输入的内容以表格形式打印 s = "" #定义一个空变量进行存储每轮输入的值 while True: user = input("username:") pwd = input("password:") email = input("email:") tem = "{0}\t{1}\t{2}\n" #将输入的值放一起 v = tem.format(user,pwd,email) #格式化,放进传入的值 s = s + v #将输入的值填充到s变量里面 if user == "Q" or pwd == "Q" or email == "Q"or user == "q" or pwd == "q" or email == "q" : break print(s.expandtabs(20))# 将每一个字符串调整为20个字符

 

posted @ 2020-04-06 10:44  AMKOOL  阅读(201)  评论(0编辑  收藏  举报