python while 格式化 运算符 编码

时间:2022-04-06 10:31:32

#######################总结#############

1. 循环

while 条件:
循环体(break, continue)
循环的执行过程:
执行到while的时候. 首先判断条件是否成立.如果成立. 执行循环体. 再一次判断条件.... 如果不成立. 直接跳出循环

break 跳出当前本层循环
continue 结束本次循环. 继续执行下一次循环

2. 格式化输出

%s 占位字符串(常用)

%d 占位数字

%f 占位浮点数

name = input('你叫什么名字:')
add = input('你来自哪里:')
age =int(input('年龄:'))
notlike=input('请输入你不喜欢的明星')
# print("我叫"+name,'我来自'+add,'老婆'+wife,'不喜欢的明星:'+notlike) # print('我叫 %s,来自%s,年龄%d 不喜欢的明星%s' %(name,add,age,notlike ))
#
# print(f'我叫{name},来自{add},年龄{age} 不喜欢的明星{notlike}') #"{1} {0} {1}".format("hello", "world") # 设置指定位置

3. 运算符

!=
+= 累加 a += b  a = a + b

and 并且, 左右两端同时为真. 结果才能是真
or 或者, 左右两端有一个是真. 结果就是真
not 非. 非真既假, 非假既真

顺序: () => not => and => or

x and y   x为真返回y  x为假返回x

x  or  y   x为真返回真 x为假返回y

x or y => if x == 0 then y else x
and和or相反

4. 编码

1. ascii 8bit 1byte 包含了 英文, 数字, 特殊字符, 特殊操作符
2. gbk 16bit 2byte 主要包含的: 中文, 日文, 韩文, 繁体中文
3. unicode 32bit 4byte 万国码
4. utf-8
英文: 8bit 1byte
欧洲: 16bit 2byte
中文: 24bit 3byte

########################作业  ###################

1、判断下列逻辑语句的True,False.

1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
2)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

True

False

2、求出下列逻辑语句的值。
1),8 or 3 and 4 or 2 and 0 or 9 and 7
2),0 or 2 and 3 and 4 or 6 and 0 or 3

8

4

3、下列结果是什么?
1)、6 or 2 > 1

6

2)、3 or 2 > 1

3

3)、0 or 5 < 4

0

4)、5 < 4 or 3

3

5)、2 > 1 or 6

1

6)、3 and 2 > 1

1

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

2

4、while循环语句基本结构?
while 条件:
循环体(break, continue)

5、利⽤while语句写出猜⼤⼩的游戏:
设定⼀个理想数字⽐如:66,让⽤户输⼊数字,如果⽐66⼤,则显示猜测
的结果⼤了;如果⽐66⼩,则显示猜测的结果⼩了;只有等于66,显示猜测结果
正确,然后退出循环。

while True:
content =int(input('请输入数字'))
if content > 66:
print('你输入的结果大了')
elif content < 66:
print('你输入的结果小了')
else:
print('你才猜了')
break

6、在5题的基础上进行升级:
给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循
环,如果三次之内没有猜测正确,则⾃动退出循环,并显示‘太笨了你....’。

number=66
count=3
while True:
content =int(input('请输入数字'))
if content > number:
print('你输入的结果大了')
elif content < number:
print('你输入的结果小了')
else:
print('你才猜了')
count -= 1
if count == 0:
print('你太笨了')
break number=66
count=1
while count<=3:
content =int(input('请输入数字'))
if content > number:
print('你输入的结果大了')
count+=1
continue
elif content < number:
print('你输入的结果小了')
count += 1
continue
else:
print('你猜对了')
count += 1
continue
print("已经 猜完了3次")

7.使用while循环输入1 2 3 4 5 6 8 9 10

number =0
while number < 10:
number+=1
print(number)

8.求1-100的所有数的和

sum = 0
number =1
while number <= 100:
sum=sum+number
number=number+1
print(sum)

9.输出 1-100 内的所有奇数

count = 1
while count <= 100:
if count % 2 == 1:
print(count)
count +=1

10.输出 1-100 内的所有偶数

count = 1
while count <= 100:
if count % 2 == 0:
print(count)
count += 1

11.求1-2+3-4+5 ... 99的所有数的和.

count = 1
sum = 0
while count < 100:
if count %2 == 0:
sum -= count
#-2 -6 -12 -20 30
else:
sum += count
#+1 +3 +5
count += 1
print(sum)

12.用户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤
字符串格式化)

count=0
number=3
while number:
number=number-1
user=input('请输入用户名:')
password=input('请输入密码:')
if user=='admin' and password=='':
print('输入正确')
else:
print('用户名或密码错误,你还剩余%s 次' %(number))

13. 用户输⼊⼀个数. 判断这个数是否是⼀个质数(升级题).
2 3 5 7 11 13

1 2
1 3
1 5
1 7
1 11
1 13

num = int(input('请输入一个数字:'))
if num <= 1:
print('这不是质数')
elif num == 2:
print('这是一个质数!')
else:
i=2
while i < num:
if num%i == 0:
print('这不是一个质数')
break
i += 1
else:
print ('这是一个质数!')
#方法二
n=int(input('请输入一个数字:'))
for i in range(2,n):
if n %i ==0:
print('不是质数')
break #有了break就不会执行后面的else
else:
print('是一个质数')

14. 输个告标语. 判断这个公告是否合法. 根据最新的公告法来判断. ⼴
告法内容过多. 我们就判断是否包含'最', '第⼀', '稀缺', '*'等字样. 如果包
含. 提示, 广告不合法
例如, 1. ⽼男孩python世界第⼀. ==> 不合法
    2. 今年过年不收礼啊. 收礼只收脑⽩⾦. ==> 合法

content = input('请输入')
if '最'in content or '第⼀'in content or '稀缺' in content or '*'in content:
print('⽼男孩python世界第⼀')
else:
print('今年过年不收礼啊. 收礼只收脑')

14. 输入数字. 判断这个数是几位数(⽤算法实现)(升级题)

i = 0
num = int(input('请输入一个数:')) while num >= 1:
num = num // 10
i += 1
print('这个数是%s位数'% i)

明⽇默写代码:
1. 求1-100之间所有的数的和

number=0
sum=0
while number < 100:
number+=1
sum = number + sum
print(sum)

2. And or not的含义和特征

and 变量 a 和 b 都为 true 则为真
or 变量 a 和 b 都为 true,或其中一个变量为 true
not 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

3. break continue的含义. 有什么区别

#continue 停止当前本次循环,继续执行下一次循环
#break 彻底干掉一个循环