二、while 循环、编码、格式化输出、运算符
二、while 循环、编码、格式化输出、运算符
1.今日内容大纲
- pycharm 的安装以及简单使用辅助开发软件,代码逐行调试,设置高端,不会提示、dbug模式
- 格式化输出
- while 循环
- 运算符 and or not
- 编码的初识
2.while 循环
1.while 循环
-
why : 大气循环,歌曲循环;程序中:输入用户名和密码
-
what: while 无线循环
-
how:
-
基本结构
while 条件:
循环体 -
初识循环
while True:
print('狼的诱惑')
print('我们不一样')
print('月亮之上')
print('庐州月')
print('人间') -
基本原理
1.先判断条件是否是True
2.如果是True进入循环体
3.执行到循环体的底部
4.继续判断条件,条件成立,进入循环体
............. -
循环如何终止
-
改变条件
flag = True
while flag:
print('狼的诱惑')
print('我们不一样')
print('月亮之上')
flag = False
print('庐州月')
print('人间')练习题:1~ 100 所有的数字
count = 1
flag = True
while flag:
print(count)
count = count + 1
if count == 101:
flag = Falsecount = 1
while count < 101:
print(count)
count = count + 11 + 2 + 3 + .....100 的最终结果
count = 1
s = 0while count < 101:
s = s + count
count = count + 1
print(s) -
brake
while True:
print('狼的诱惑')
print('我们不一样')
print('月亮之上')
break
print('庐州月')
print('人间')
print(111) -
系统命令
quit(),exit() -
continue
continue : 退出本地循环,继续笑一次循环
flag = True
while flag:
print(111)
print(222)
flag = False
continue
print(333)while else: while 循环如果被break打断,则不执行else语句
count = 1
while count < 5:
print(count)
if count == 2:
break
count = count + 1
else:
print(666) -
where : 你需要重复之前的动作,输入用户名密码,考虑到while 循环
2.格式化输出
-
-
字符串中想让某些位置变成动态可传入的,首先要考虑到格式化输出
3.运算符:
算数运算符 + - ,比较运算符 > = ,赋值运算符=,+= 逻辑运算符 , and or ,成员运算符 not in /in
i1 = 2
i2 = 3
print(2 ** 3)
print(10 // 3) # 取整除
print(10 % 3)print(3! = 4)
count = 1
count = count + 1
count += 1
print (count)and or not
1. 在没有()的情况下,优先级: not > and > or ,同一优先级从左至右依次计算
情况1:两边都是比较运算
print(2 > 1 and 3 < 4 or 4 > 5 and 2 < 1) # True
print(True or False)
情况2: 两边都是整数
'''
x or y : x 为真,值就是 x ,x 为假,值就是 y
'''and 正好相反
print (1 or 2) # 1
print (3 or 2) # 3
print (4 or 2) # 4
print (-1 or 2) # -1
print (0 or 2) # 2print (1 and 2) # 2
数据类型之间的转换
# str ---> int : 只能是纯数字组成的字符串
s1 = '000100'
print(int(s1))
# int ---> str
i1 = 100
print(str(i1),type(str(i1)))
# int ---> bool : 非零即True,0为False
i = 0
print(bool(i))
# bool ---> int
print(int(True)) # 1
print(int(False)) # 04.编码的初识重点
计算机存储文件,存储数据,以及将一些数据信息通过网络发送出去,
存储发送的数据什么内容?底层都是01010101-
密码本:010101110 二进制与文字的对应关系
-
最早的计算机密码本
ASCII码:只包含 英文字母 数字 特殊字符 -
0000 0001 : a
0000 0101 : ;
8bit == 1byte
'hello123': 8byte -
gbk : 英文字母 数字 特殊字符 和 中文 (国标)
一个英文字母: 0000 0001 : a # 在gbk占 一个字节
一个中文 中: 0000 0001 0100 0001 : 中 # 占 二个字节
Unicode: 万国码 把世界上所有的文字都记录到这个密码本
期初一个字符用2个字节表示:
0000 0001 0000 0011: a 2个字节
0000 0001 0100 0001 : 中 2个byte后来为了涵盖全部文字: 0000 0001 0000 0011 0000 0001 0000 0011: a 4 个 0000 0001 0100 0001 0000 0001 0000 0011 : 中 4个 浪费空间,浪费资源。
-
Utf-8:升级:最少用8bit1个字节表示一个字符。
0000 0011: a 1字节
0000 0011 0000 0011 欧洲 2个字节
0000 0011 0000 0011 0000 0011 中: 3个字节。
重点
'中国12he' : GBK 8 个字节
'中国12he' : UTF-8 10 个字节
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB
7.6MB ---> 7.6 * 1024 * 1024 * 8
明日内容:
1. 二进制与十进制之间的转换
- str bool int 转换
- str具体操作方法:索引切片步长,常用操作方法,
- for 循环