一.while循环
1.基本结构
while 条件:
循环体
流程: 判断条件是否为真。 如果真, 执行代码块。 然后再次判断条件是否为真 。如果真继续执行代码块。。。。
直到条件变成了假。 循环退出
while 条件:
循环体
else: #循环在正常情况跳出之后会执⾏这⾥
代码块 # 当条件不成立的时候执行
eg1: 1-100求和
count = 1
sum = 0
while count <= 100:
sum = sum + count # 累加运算的思想
count = count + 1
print(sum)
2.break continue exit
exit() #整个程序结束,退出
break #结束当前本层循环,本层循环结束.毁灭性的
continue #接受当前本次循环,继续下次循环.暂时性的
eg2:exit()
while True:
content = input("请输入你要跟对方说的话(输入Q退出程序):")
if content == 'Q':
exit() # 这个是彻底的退出程序
print(content)
print("我去吃饭了")
输入Q后,直接结束程序,不打印"我去吃饭了"
eg3:break
while True:
content = input("请输入你要跟对方说的话(输入Q退出程序):")
if content == 'Q':
break # 打断的是当前本层循环, 终止掉循环, 毁灭性的
print(content)
print("我去吃饭了")
输入Q后结束while的循环,执行打印"我去吃饭了"
eg4:continue
while True:
content = input("请输入你要跟对方说的话(输入Q退出程序):")
if content == 'Q':
continue # 停止当前本次循环。 继续执行下一次循环 暂时性的
print(content)
print("我去吃饭了")
输入Q结束本次循环,不打印,继续下次循环.
二.格式化输出
1.占位符
%s 代表字符串占位符,可以做任何内容的占位符 (最好用%s)
%d 代表数字占位符.只能做数字的占位符.
#让用户输入 名字, 年龄, 爱好 。格式化输出成 我叫xxx, 我喜欢干xxxx。 我今年xxx大了.
name = "alex"
age = 18
hobby = "音乐"
print("我叫%s, 我喜欢干%s, 我今年%d岁了" % (name, hobby, age)) # %d 必须占位数字
注:当字符串中出现了占位符,那么想要打印%,必须写%%.
print("我叫%s, 我已经学习python15%%了" % ("刘伟")) # 当字符串中出现了占位符。 那么想要使用%,必须写%%
print("我们大家已经学习了15%的内容了")#不含占位符时,可以正常输出.
三.运算符
1.算数运算符
+ - * /
//(整除)
**(幂) a**b为a的b次方
%(取模,取余数) a%b为a/b的余数
2.比较运算符
==等于 !=不等于 <>不等于 >大于 <小于 >=大于等于 <=小于等于
3.赋值运算符
= a=b为把b的值赋给a
+= 加法赋值运算 a+=b等同于a=a+b
同理: -=减法赋值运算 *=乘法赋值运算 /=除法赋值运算 %= 取模赋值运算 **幂赋值运算 //取整除赋值运算
4.逻辑运算符
and与 or或 not非
运算顺序: ( )>not>and>or 同级从左往右计算
注:如果and or not 两边为数字时则 x or y 如果x为真,值为x; x为假,值为y.
(0为False ,1为True) and与or相反 x and y 如果x为真,值为y, x为假值为x.
eg:
1)、6 or 2 > 1 6
2)、3 or 2 > 1 3
3)、0 or 5 < 4 False
4)、5 < 4 or 3 3
5)、2 > 1 or 6 True
6)、3 and 2 > 1 True
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
四.编码
1.最早的计算机编码是ASCII. 有英文字母大小写+数字+特殊符号. 8bit(位)=1byte(字节) 没有中文 后面的编码必须兼容ASCII
2.后来不同的国家就提出了不同的编码⽤来适⽤于各⾃的语⾔环境 .比如
→中国的GBK 把中国的文字进行编码,对ASCII进行扩充.16位=2字节 (未包含全部的汉字)主要包含了中文, 日文, 韩文, 英文(兼容ASCII)
→UNICODE 32bit 兼容各个国家的编码。万国码。 浪费空间 32bit =4byte
→现在通用的UTF-8 是可变长度的UNICODE。本质是UNICODE。
在UTF-8中 英文占用1个字节,8位.
欧洲文字占用2个字节,16位.
中文占用3个字节,24位.
3.单位转换
8bit=1byte
1024byte=1kB
1024KB=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
补充内容:
in和not in可以判断xxx字符串是否出现在xxxxx字符串中
content = input("请输入你的评论信息:")
if "金三胖" in content: # xxx是否出现在xxx中
print("对不起. 你的评论包含敏感词汇")
else:
print("OK")