一、while循环
while 条件
循环体
例:无限循环打印aaaaa
while True:
print('aaaaaa')
终止循环的条件
1、改变循环条件
2、break
continue是结束本次循环,进行下一次循环
例:输出1--100所有数字
while count <= 100:
print(count)
count += 1
print('打印结束')
例:输出1--100所有数字,用标志位结束循环
count = 0
flage = True
while flage:
count += 1
print(count)
if count >= 100:
flage = False
print('打印结束!')
例:打印0+1+2+3+4....+100的总和
num = 0
count = 1
while count <= 100:
num += count
count += 1
print(num)
例:break 直拉跳出循环
while True:
print('111111')
print('222222')
break
print('333333')
例:while else 当while循环被break打断,就不会执行else的结果
count = 0
while count <= 5:
count += 1
if count == 3:
break
print(count)
else:
print('循环正常执行完毕')
print("-----end------")
例:打印0,1,2,3,4...100中的偶数
count = 0
while count <= 100:
count += 1
if count % 2 ==0:
print(count)
例:continue
while True:
print('111111')
print('2222222')
continue
print('3333333')
count = 0
while count <= 5:
count = count + 1
if count == 3:
continue
print(count)
例:用户登陆(三次机会,三次5秒再试)
import time
count = 3
while True:
name = input('请输入用户名:')
password = int(input('请输入密码:'))
if name == 'mrxiong' and password == 123456:
break
else:
print("你输入的用户名和密码错误,剩余",count,"次机会")
count -= 1
if count < 0:
print("你输入次数过多,请在五秒后再试!")
count = 3
i = 5
while i >= 0:
print("请您在",i,"秒后重新输入")
i -= 1
print(i)
time.sleep(1)
例:九九成法表
j = 1
while j<=9:
i = 1
while i <=j :
print("%d*%d=%d" %(i,j,i * j),end=" ")
i += 1
print()
j += 1
二、格式化输出
占位符:
% s d 即%s(字符串) %d(数字类型) %%只是单纯输出%号
例:
name = input('请输入姓名:')
age = input('请输入年龄:')
height = input('请输入身高:')
msg = "我名字叫%s,年龄%s岁,身高%s" % (name, age, height)
print(msg)
例:
name = input('请输入姓名:')
age = input('请输入年龄:')
height = input('请输入身高:')
msg = '''---------info of %s-------
Name : %s
age : %d
height : %d
-------- end ---------''' % (name, name, int(age), int(height))
print(msg)
例:
name = input('请输入姓名:')
age = input('请输入年龄:')
height = input('请输入身高:')
msg = "我叫%s,年龄%s岁,身高%s,学习进度30%%" % (name, age, height)
print(msg)
# 其中30%% 中的多一个%是一个转义符并不是要格式化输出
三、运算符
1)运算符
1)运算符
+ 加
- 减
* 乘
/ 除
% 取除
** 幂
// 取整除
2)比较运算符
== 等于
!= 不等于
< 小于
> 大于
<= 小于等于
>= 大于等于
在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。
如 :print(1 < 2 and 3 < 4 or 1>2) 先算:1 < 2 and 3 < 4 这结果是Ture ,再算1>2 这结果是Flase . 再用 True or Flase计算, 结果是True
x or y , x为非零,则返回x, x为零时,则返回y
如:
print(1 or 2) #1
print(3 or 2) #3
print(0 or 100) #100
print(5 < 4 or 3 ) #因x or y, x 为0和False 返回y 5 < 4 返回是F,则结果返回3
print(2 > 1 or 6) #因x or y, x 为True和非零,返回x .2 > 1 返回是T,则结果返回6
x and y, x为非零,则返回y. x为零,则返回x
如:
print(1 and 2) #2
print(0 and 2) #0
print(3 > 1 and 0) #x and y ,x为真或非零时,返回y
print(0 and 3 > 1) #x and y ,x为False或零时,返回x
print(3 < 1 and 5) #x and y ,x为False或零时,返回x
int ---> bool ,非零转换成bools 是True, 0转换成bool 是False
print(bool(2)) #True
print(bool(-2)) #True
print(bool(0)) #Flase
bool--->int ,True转换成int是1 False转换成int是0
print(int(True)) #1
print(int(False)) #0
四、初始编码
电脑的传输,还有储存在电脑的文件都是二进制01010
ascii码 只能表示256种可能,太少,只能显示英文、特殊字符,数字。
unicode 万国码
utf-8 一个字符最少用8位去表示,英文用8位 一个字节,欧洲16位,两个字节,亚洲24位,三个字节
gbk 中国人自己发明的,一个中文用两个字节 16位去表示。
1bit 8bit = 1bytes
1byte 1024byte = 1KB
1KB 1024kb = 1MB
1MB 1024MB = 1GB
1GB 1024GB = 1TB