python 基础知识练习题
# -*- coding:utf-8 -*- # 1、判断下列逻辑语句的True,False. # 1) a = 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 print(a) True # 2) b = not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 print(b) False # 2、求出下列逻辑语句的值。 # 1) c = 8 or 3 and 4 or 2 and 0 or 9 and 7 print(c) 8 # 2) d = 0 or 2 and 3 and 4 or 6 and 0 or 3 print(d) 4 # 3、下列结果是什么? # 1) print(6 or 2 > 1) # X为真,返回X,所以返回6 # 2) print(3 or 2 > 1) # X为真,返回X,所以返回3 # 3) print(0 or 5 < 4) # X为假,返回y,所以返回False # 4) print(5 < 4 or 3) # X为假,返回y,所以返回3 # 5) print(2 > 1 or 6) # X为真,返回x,所以返回True # 6) print(3 and 2 > 1) # X为真,返回y,所以返回True # 7) print(0 and 3 > 1) # X为假,返回x,所以返回0 # 8) print(2 > 1 and 3) # X为真,返回y,所以返回3 # 9) print(3 > 1 and 0) # X为真,返回y,所以返回0 # 10) print(3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2) # 返回2 # 4. 简述变量命名规范 # # (1)变量是由数字,字母,下划线,任意组合. # (2)变量不能以数字开头. # (3)变量不能是python的关键字. # ['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'] # (4)变量可描述性. # (5)变量不能是中文. # (7)变量不能过长. # 5. name = input(“>>>”) name变量是什么数据类型? # 字符串 str # 6. if条件语句的基本结构? # (1) # if 条件: # 代码块 # else: # 代码块 # # (2) # if 条件: # 代码块 # elif 条件: # 代码块 # else: # 代码块 # (3) # if 条件: # 代码块 # if 条件: # 代码块 # else: # 代码块 # # 7. while循环语句基本结构? # while True: # print() # # 8. 写代码:计算 1 - 2 + 3 ... + 99 中除了88意外所有数的总和? count = 1 sum = 0 while count < 100: if count % 2 == 1: sum = sum + count else: if count == 88: count += 1 continue else: sum = sum - count count += 1 print(sum) # 9. ⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化) count = 3 while count > 0: name = input("请输入用户名=") password = input("请输入密码=") if name == "xue" and password == "123": print("登陆成功,用户名为%s,请输入密码%d" % (name,int(password))) break else: count -= 1 if count == 0: b = input("登陆失败,还想再尝试吗?/y") if b == "y": count = 3 else: print("还剩" + str(count) + "次") else: print("NO") # 10. 简述ascii、unicode、utf-8编码关系? # # 计算机: # 储存文件,或者是传输文件,实际上是010101010 # 计算机创建初期,美国,二进制 # # (对照表): # ascii # # 因为全球语言很多,ascii不足以存储这么多对应关系,创建了一个超级密码本:万国码unicode # 8 位 == 1个字节. # hello h一个字符,e一个字符,he就不是一个字符. # 中国:中是一个字符,国是一个字符. # unicode : # 创建之初,16位,2个字节,表示一个字符. # 英文: a b c 六个字节 一个英文2个字节 # 中文 中国 四个字节 一个中文用2个字节 # 改成 32位,4个字节,表示一个字符. # a 01000001 01000010 01000011 00000001 # b 01000001 01000010 01100011 00000001 # 中 01001001 01000010 01100011 00000001 # 浪费资源. # 对Unicode进行升级: utf-8 # utf-8 用最少用8位数,去表示一个字符. # 英文: 8位,1个字节表示. # 欧洲文字: 16位,两个字节表示一个字符. # 中文,亚洲文字: 24位,三个字节表示. # utf-16 用最少用16位数. # # gbk: # 国标,只能中国人自己用, 一个中文用16位,两个字节表示. # # 11. 简述位和字节的关系? # # utf-8 用最少用8位数,去表示一个字符. # 英文: 8位,1个字节表示. # 欧洲文字: 16位,两个字节表示一个字符. # 中文,亚洲文字: 24位,三个字节表示. # utf-16 用最少用16位数. # # gbk: # 国标,只能中国人自己用, 一个中文用16位,两个字节表示. # # 12. “⽼男孩”使⽤UTF-8编码占⽤⼏个字节?使⽤GBK编码占⼏个字节? # 3*3 = 9(“⽼男孩”使⽤UTF-8编码占⽤) # 3*2 = 6(使⽤GBK编码占) # # 13. 制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进⾏任意现实 # 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx name1 = input("输入用户名") space1 = input("输入地点") habby1 = input("输入爱好") a = ("敬爱可亲的%(name)s,最喜欢在%(space)s,干%(habby)s") \ %{"name":name1,"space":space1,"habby":habby1} print(a) # 14. 等待⽤户输⼊内容,检测⽤户输⼊内容中是否包含敏感字符?如果存在敏感字符提示“存在敏感字符请重新输⼊”, # 并允许⽤户重新输⼊并打印。敏感字符:“⼩粉嫩”、“⼤铁锤” flag = True count = 1 while flag: content = input("输入内容=") if "xiaofennen" in a or "datiechui" in content: print("存在敏感字符请重新输⼊") else: print("输入成功") flag = False count += 1 # 15. 单⾏注释以及多⾏注释? # # 单行注释 适用于语句注释 # 多行注释 使用于段落注释 # # 16. 简述你所知道的Python3和Python2的区别? # # python2,python3区别大环境下: # python2: # 1,源码都含有php,Java,C,等语言的规范陋习, # 2,重复代码特别多. # # python3: # 源码很规范,清晰,简单,符合python的宗旨. # # # 17. 看代码书写结果: a = 1>2 or 4<7 and 8 == 8 print(a) True # 18.continue和break区别? # continue 是结束本次循环,进行下次循环 # break 跳出循环,break以下的代码将不再执行。