基础练习题
1、执行python脚本的两种方式
python 解释器
python 1.py
linux ./1.py
2、简述位、字节的关系
8位一个字节
3、简述 ascii、unicode、utf-8、gbk的关系
最开始是ascii码 不够用,后来有了unicode 但浪费空间 最后出现了utf-8 通用版,省空间用多少开多少。gbk是中国编码
4、请写出 “李杰” 分别 用utf-8 和gbk的编码所占的位数
utf-8 6个字节
gbk 4个字节
a = "李杰"
python 3 (计算的是字符)
len(a) #####2字符
python 2 (计算的是字节)
len(a) ######6字节
5、python单行注释和多行注释分别用什么?
# 单行注释
“”“ ”“” 三个引号是多行注释
6、声明变量注意事项有哪些?
数字 字母 下划线 不能以下划线开头 内置变量不能用
7、如有以下变量n1=5 请使用int提供的方法、得到该变量最少可以用多少个二进制位表示?
#####bit_length()方法
n1 = 5 v = n1.bit_length() print(v) 3 最少用3个二进制位表示
8、布尔值 分别有什么?
True False
"" ==>假 空字符串是假
“ ” ==>真 空内容也是真
0 ==> 假
其他 ==> 真
字符串转数字
a = "123343"
b = int(a)
数字转字符串
a = 1231
b = str(a)
转换布尔值
a = 123
b = bool(a)
c = "jkjkkj"
d = bool(b)
######
9、阅读代码、请写出执行结果
a = "alex" b = a.capitalize() print (a) print (b)
alex Alex
10、索引 或 切片
21、字符串是否可迭代对象?如可以请使用for循环每一个元素。
只能能被for循环就是可迭代对象 for i in 值 :这个值就是可迭代对象
for i in 值:
print(i)
22、拼接字符串
li = "alexericerskfkdf" v = "_".join(li) print(v) li = ['alex','eric','rain'] v = "_".join(li) print (v) a_l_e_x_e_r_i_c_e_r_s_k_f_k_d_f alex_eric_rain
23、python2中的range 和python3中的range的区别?
2 range是直接创建,占用内存 xrange 和python3时一样
3是for循环时才创建,一个一个创建 。节省内存
24、实现一个整数加法计算器
.split() 分割方法 把输入的内容以+号为标识进行分割
a = input('>>>>') v1,v2 = a.split('+') v1 = int(v1) v2 = int(v2) s = v1 + v2 print(s)
25、计算用户输入的内容有几个十进制小数?几个字母?(意思就是投票)
c1 = 0 c2 = 0 val= input(">>>") for item in val: if item.isdigit() == True: c1 += 1 elif item.isalpha() == True: c2 += 1 print(c1,c2) isdigit()判断输入的是否是数字 isalpha() 判断输入的是否字母
26、简述int 和 9 等数字 以及str 和 “sdfsdf” 等字母的关系?
int 12323 str "asdfdfsdf" 就是类和对象的关系
27、制作趣味模板程序 需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实
如:亲爱的xxx,最喜欢在xxx地方干xxx
temp = "亲爱的{0},最喜欢在{1}干{2}" name = input("请输入名字>>>") hehe = input('请输入地点>>>') haha = input('请输入动作>>>') v = temp.format(name,hehe,haha) print(v) 请输入名字>>>zhink 请输入地点>>>公司 请输入动作>>>活 亲爱的zhink,最喜欢在公司干活
28、制作随机验证码,不区分大小写。
流程:
-‐ 用户执行程序
-‐ 给用户显示需要输入的验证码
-‐ 用户输入的值
用户输入的值和显示的值相同时现实正确信息;否则继续生成随机验证码继续等待用户输入
生成随机验证码代码示例:
先做一个验证码方法
def check_code(): import random checkcode = '' for i in range(6): current = random.randrange(0,6) 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)
完整版的
def check_code(): import random checkcode = '' for i in range(6): current = random.randrange(0,6) 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("请输入验证码>>>") s1 = v.lower() s2 = code.lower() if s1 == s2: print("成功") break else: print("失败") HCV0QR 请输入验证码>>>hahahaha 失败 B2XJHL 请输入验证码>>>b2xjhl 成功
29、过滤敏感词,将内容替换为*****
v = "我要小姐姐,苍老师最好,看看东热" v = v.replace('小姐姐',"**") v = v.replace("苍老师","***") v = v.replace("东热","**") print(v) 我要**,***最好,看看**
30、
制作表格 循环提示用户输入:用户名、密码、邮箱 (要求用户输入的长度不超过20个字符,如果超过则只有前20个字符有效) 如果用户输入 q或Q 表示不再继续输入,将用户输入的内容以表格形式大隐
expandtabs
s = "" while True : v1 = input('请输入用户名>>>') v2 = input('请输入密码>>>') v3 = input('请输入邮箱>>>') temp = "{0}\t{1}\t{2}\n" v = temp.format(v1,v2,v3) s = s + v Q = input("请输入q 或 Q 退出 >>>") if 'q' == Q.lower(): break print(s.expandtabs(20)) 请输入用户名>>>zhink 请输入密码>>>234234 请输入邮箱>>>2342@qq.com 请输入q 或 Q 退出 >>> zhink 234234 2342@qq.com 请输入用户名>>>zhink 请输入密码>>>23423 请输入邮箱>>>123@qq.com 请输入q 或 Q 退出 >>>q Process finished with exit code 0

浙公网安备 33010602011771号