一、 while循环
1、基本形式
while 条件:
循环体
# 判断条件是否为真,如果真,执行代码块.然后再次判断条件是否为真.如果真继续执行代码块...直到条件变成了假.循环退出
ps:死循环
while True:
print('hello world')
2、while中的计数
count = 0
while count < 100: # count作用计数,控制循环范围
count = count + 1
print(count)
3、while 累加操作
# 计算 1+...100的和 count = 1
sum = 0
while count <= 100:
sum += count
count += 1
print(sum)
4、while...else
while 条件:
循环体
else: #只有执行条件为假的时候才会执行else后语句
循环体 index = 1
while index < 11:
if index == 8:
break #如果循环通过break退出那么while后面的else将不会执行
else:
print(index)
index += 1
else:
print('hello')
5、break 和 continue/exit(0)
<1>break
结束当前的本层循环
<2>continue
结束当前本次循环,继续下一次循环
<3>exit(0)
结束整个程序
二、 格式化输出
print("我叫%s, 我喜欢干%s, 我今年%d岁了" % (name, hobby, age)) # %d 必须占位数字
%s,字符串占位符可以接收所有数据类型, 输出%则需 %%
s,获取传入对象的__str__方法的返回值,并将其格式化到指定位置
r,获取传入对象的__repr__方法的返回值,并将其格式化到指定位置
c,整数:将数字转换成其unicode对应的值,10进制范围为 0 <= i <= 1114111(py27则只支持0-255);字符:将字符添加到指定位置
o,将整数转换成 八 进制表示,并将其格式化到指定位置
x,将整数转换成十六进制表示,并将其格式化到指定位置
d,将整数、浮点数转换成 十 进制表示,并将其格式化到指定位置
e,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(小写e)
E,将整数、浮点数转换成科学计数法,并将其格式化到指定位置(大写E)
f, 将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认保留小数点后6位)
F,同上
g,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是e;)
G,自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数法),并将其格式化到指定位置(如果是科学计数则是E;)
%,当字符串中存在格式化标志时,需要用 %%表示一个百分号 注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式
>>> print('%f' % 1.11) # 默认保留6位小数
1.110000
>>> print('%.1f' % 1.11) # 取1位小数
1.1
>>> print('%e' % 1.11) # 默认6位小数,用科学计数法
1.110000e+00
>>> print('%.3e' % 1.11) # 取3位小数,用科学计数法
1.110e+00
>>> print('%g' % 1111.1111) # 默认6位有效数字
1111.11
>>> print('%.7g' % 1111.1111) # 取7位有效数字
1111.111
>>> print('%.2g' % 1111.1111) # 取2位有效数字,自动转换为科学计数法
1.1e+03
三、基本运算符
1、算术运算符
2、比较运算符
3、逻辑运算符
( ) > not > and > or
1 or 2 and 3 # 先计算and再or
结果:1 0 or 1 #
0 or 2 #
1 or 2 #
1 or 2 # 如果x 为 0,则返回y 否则返回x
and 和 or 相反
4、赋值运算符
5、成员运算符
6、身份运算符
7、位运算符
四、 编码
1、ASCII码
最多只能用 8 位(1byte)来表示 2^8 = 256 但ASCII只能表示英文.ASCII只用了其中的7位, 则ASCII的二进制表示最前面的数位是 0
2、GBK码
对ASCII的扩充,16位(2byte)主要包含中日韩文,英文(对ASCII的兼容)
3、Unicode(万国码)
用32位(4byte)兼容各个国家的编码,浪费空间
4、UTF-8(最小单位8bit) UTF-16 UTF-32
可变长度的Unicode,本质是Unicode. 英文 8位(1byte) 欧洲 16位(2byte) 中文 24位(3byte)
五、 in not in
判断XXX字符串是否在XXXXXX字符串中
content = input('请输入评论:')
if '金三胖' in content:
print('含有非法字符!')
else:
print('ok')