day2、基础__(while循环、格式化输出、运算符、初始编码)

一、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="\t")
        i += 1
    print()
    j += 1

day2、基础__(while循环、格式化输出、运算符、初始编码)_第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

你可能感兴趣的:(day2、基础__(while循环、格式化输出、运算符、初始编码))