1、判断下列逻辑语句的True,False.
1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
False or True or False and True and True or False
True
2) not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
False and True or False and True and True or False
False
2、求出下列列逻辑语句的值。
1) 8 or 3 and 4 or 2 and 0 or 9 and 7
8 or 4 or 0 or 7
8
2) 0 or 2 and 3 and 4 or 6 and 0 or 3
0 or 3 and 4 or 0 or 3
4
3、下列列结果是什什么?
1)、6 or 2 > 1 6
2)、3 or 2 > 1 3
3)、0 or 5 < 4 False
4)、5 < 4 or 3 3
5)、2 > 1 or 6 True
6)、3 and 2 > 1 True
7)、0 and 3 > 1 0
8)、2 > 1 and 3 3
9)、3 > 1 and 0 0
10)、3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2
True and 2 or True and 4 or True
2
4、while循环语句基本结构?
while 条件:
循环体
else: 循环在正常情况跳出之后会执⾏行行这⾥里里
5、利⽤while语句写出猜大小的游戏: 设定一个理想数字⽐如:66,让⽤户输⼊数字,如果比66大,则显示猜测的结果⼤了了;如果比66⼩,则显示猜测的结果⼩了;只有等于66,显示猜测结果 正确,然后退出循环。
GuessNum = 66
exit_flag = False
while not exit_flag:
InputNum=input('Guess Num:').strip()
if not InputNum.isdigit():
print('Pls Input A Num.')
continue
else:
InputNum=int(InputNum)
if InputNum == GuessNum:
print('Well Done')
exit_flag = True
elif InputNum > GuessNum:
print('More Than GuessNum')
elif InputNum < GuessNum:
print('Less Than GuessNum')
else:
print('Input a num')
6、在5题的基础上进行升级: 给用户三次猜测机会,如果三次之内猜测对了了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则⾃动退出循环,并显示‘太笨了了你....’。
Count = 0
GuessNum = 66
while Count < 3:
InputNum=input('Guess Num:').strip()
if not InputNum.isdigit():
print('Pls Input A Num.')
continue
else:
InputNum=int(InputNum)
if InputNum == GuessNum:
print('Well Done')
break
elif InputNum > GuessNum:
print('More Than GuessNum')
elif InputNum < GuessNum:
print('Less Than GuessNum')
else:
print('Input a num')
Count+=1
else:
print('太笨了了你....')
7.使用while循环输入1234568910
num = 1
while num < 11:
if num != 7:
print(num)
num+=1
num = 1
while num < 11:
if num == 7:
num+=1
continue
print(num)
num+=1
8.求1-100的所有数的和
num = 1
sum = 0
while num < 101:
sum+=num
num+=1
else:
print('和为%d' % sum)
9.输出 1-100 内的所有奇数
num = 1
while num < 101:
if num %2 != 0:
print(num)
num+=1
num = 1
while num < 101:
print(num)
num+=2
10.输出 1-100 内的所有偶数
num = 1
while num < 101:
if num %2 == 0:
print(num)
num+=1
num = 2
while num < 101:
print(num)
num+=2
11.求1-2+3-4+5 ... 99的所有数的和.
sum = 0
num = 1
while num < 100:
if num % 2 == 0:
print('%d+'%num,end='')
sum-=num
if num % 2 != 0:
if num == 99:
sum+=num
print('%d'%num,end='\n\n')
else:
print('%d-'%num,end='')
sum+=num
if num == 99:
print('1-2+3-4+5 ... 99的所有数的和:%d' % sum)
num+=1
12.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)
username='long'
password=123
count = 1
while count < 4:
UserName=input('UserName:').strip()
PassWord=input('PassWord:').strip()
if UserName == username and int(PassWord) == password :
print('LogIn.')
break
else:
print('还剩%d次机会。'% (3-count))
count+=1
13.简述ASCII、Unicode、utf-8编码
ASCII编码
1967年美国制定了一套编码规范,其中规定了 128 个字符与二进制的对应关系,称之为 ASCII 编码,
二进制范围是 0-127:[00000000,011111111],可以看出来最高位没有使用。虽然 ASCII 规范出来了,
但是存在很多不足,主要原因是它所包含的字符集太小,只有拉丁字母、阿拉伯字符、英文标点和一些控制字符,
此时欧洲人第一个站出来表示不高兴,比如意大利语的字符 Á 没法表示,正好ASCII 编码中最高位被闲置了,
把这部分进行利用,将ASCII 从7位扩展成了8位,这就是扩展ASCII(EASCII)。
将 ASCII 编码扩展之后,欧洲人高兴了,但是其他语音还是不能处理。
为了解决这些语言的编码问题,各国开始搞自己的编码,这期间产生了许多种编码格式,
比如常见的汉字编码格式 GB-2312。各个国家都采用不同的编码,这样是没办法相互通信的,
所以需要有一种编码,能够涵盖所有语言符号,这就是 Unicode。
Unicode
世界上存在着多种编码方式,同一个二进制数字可以被解释成不同的符号。因此,要想打开一个文本文件,
就必须知道它的编码方式,否则用错误的编码方式解读,就会出现乱码。为什么电子邮件常常出现乱码?
就是因为发信人和收信人使用的编码方式不一样。可以想象,如果有一种编码,将世界上所有的符号都纳入其中。
每一个符号都给予一个独一无二的编码,那么乱码问题就会消失。这就是Unicode,
就像它的名字都表示的,这是一种所有符号的编码。
Unicode是一个很大的集合,现在的规模可以容纳100多万个符号。每个符号的编码都不一样,
比如,U+0639表示阿拉伯字母Ain,U+0041表示英语的大写字母A,U+4E25表示汉字“严”。
具体的符号对应表,可以查询unicode.org ,或者专门的汉字对应表 。
UTF-8
互联网的普及,强烈要求出现一种统一的编码方式。UTF-8就是在互联网上使用最广的一种unicode的实现方式。
其他实现方式还包括UTF-16和UTF-32,不过在互联网上基本不用。这里的关系是,
UTF-8是Unicode的实现方式之一。
UTF-8最大的一个特点,就是它是一种变长的编码方式。
它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。
14.简述位和字节的关系?
计算机存储的最小的基本单位是位 只能用0或者1来表示
计算机常用的存储单位是字节 1字节由8位组成
字是人为的自然的最小存储单位 一个英文字母和英文标点两个字节
明日默写内容:
1. 求1~100所有数的和。
2. break continue的含义区别
3,Unicode,utf-8,GBK,每个编码英文,中文,分别用几个字节表示。
15. ⽤户输⼊入一个数. 判断这个数是否是一个质数(升级题).
质数(prime number)又称素数,有无限个。
一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,
换句话说就是该数除了1和它本身以外不再有其他的因数。
while True:
count = 2
InputNum = input('Input A Num:').strip()
if InputNum.isdigit():
InputNum=int(InputNum)
if InputNum > 1:
while count < InputNum:
if InputNum % count == 0:
print('%d不是质数' % InputNum)
break
count+=1
else:
print('%d是质数' % InputNum)
else:
print('不是质数。')
else:
print('不是质数。')
16. 输⼊⼀个广告标语. 判断这个广告是否合法. 根据最新的⼴告法来判断. 广告法内容过多. 我们就判断是否包含'最', '第⼀', '稀缺', '*'等字样. 如果包 含. 提示, 广告不合法
1. 老男孩python世界第一. ==> 不合法
2. 今年过年不收礼啊. 收礼只收脑白金. ==> 合法
ads = input('广告标语:')
if '最' in ads or '第⼀' in ads or '稀缺' in ads or '*' in ads:
print('不合法广告')
else:
print('合法广告')
17. 输入一个数. 判断这个数是几位数(用算法实现)(升级题)
while True:
InputNum = input('Input a num:').strip()
if InputNum.isdigit():
count=1
InputNum=int(InputNum)
while InputNum > 10:
InputNum=InputNum/10
count+=1
print('这是一个%d位数' % count)
else:
print('Input a num.')
continue