定义:不断地重复着某件事情就是循环
while是一个关键字
while 语法
while 条件:
循环体
while循环中的两个关键字 break 、continue
break:终止当前循环
举例说明:
#本次循环循环5次,不会再循环第6次
count = 0
while True: # 死循环
count = count + 1 # 先执行 = 右边的内容
if count == 5:
print(count)
break # 有限循环
continue:跳出当前循环,继续下次循环(就是伪装成循环体中的最后一行代码)
举例说明:
#本次循环是一个死循环,只是循环期间的第5次结果不会出现,之后接着死循环
count = 0
while True: # 死循环
count = count + 1 # 先执行 = 右边的内容
if count == 5:
print(111)
continue # continue 就是伪装成循环体中最后一行代码
print(count)
达到循环体的条件时,break 和 continue 下方的代码都不会执行
举例说明:
#本次循环体中的continue没有用,可以去掉
count = 0
while True: # 死循环
count = count + 1 # 先执行 = 右边的内容
continue # continue 就是伪装成循环体中最后一行代码
print(count)
通过条件控制循环次数
举例说明:
题目:输出4~67,包含4和67以及之间的数字
答案代码:
count = 4 #计算器
while count <= 67:
print(count)
count += 1 #计算器进行计算
?书写错误举例说明:
#本次循环是一个死循环,因为本次循环没有计算器(书写是记得添加计算器)
print(666)
count = 0
while count < 3:
print(count) # 一直死循环,计算器没有进行计算
while else (与上节课讲的 if else相似)
举例说明:
题目:输出666 0 1 2 888
答案代码:
print(222)
count = 0
while count < 3:
print(count)
count = count + 1
else:
print(888)
?再举个例子说明:
题目:输出222 0
答案代码:
#思路:0<3,符合条件,进入循环体后,通过print输出0,之后输入到计算器变成1,碰到break终止当前循环,包括else不再执行,(while 和 else 是一整个循环)
print(222)
count = 0
while count < 3:
print(count)
count = count + 1
break
else:
print(111)
举个例子证明break跳出当前循环:
题目:输出220 0 1 2 111
答案代码:
#说明一下:这个代码比上述例子少了break关键字,导致结果就不一样!
#思路:先输出222,0<3,符合条件进入循环体,输出0,通过计算器变成1,1<3再次进入循环体,输出1,通过计算器变成2,2<3再次进入循环体,输出2,通过计算器变成3,3=3不符合条件,进入else,输出111
print(222)
count = 0
while count < 3:
print(count)
count = count + 1
else:
print(111)
%s 字符串 => %s可以填充字符串也可以填充数字
%d 和 %i 整型 => 必须填充数字
%% ?转义 => 变成普通的%
按照位置顺序一一对应(占了几个位置就填几个位置)
f-strings python3.6版本及以上才能使用
代码复杂化举例
name = input("name")
age = input("age")
sex = input("sex")
hobby = input("hobby")
msg = """
------info------
name:%s
age:%s
sex:%s
hobby:%s
-------end------
"""
print(msg%(name,int(age),sex,hobby))
代码简单化举例
msg = "my name is %s I'm %s years old" # 单双引号配合使用
print(msg%(input("name:"),input("age:")))
代码更简单化举例(f)
msg = f"my name % {{}} is {input('name:')} I'm {input('age:')} years old"
print(msg)
比较运算符
> < >= <= ==(等于) != (不等于)
算数运算符
+ 加
- 减
* 乘
/ 除
// 整除|地板除(向下取整)
** 幂
% 取余(模)
赋值运算符
= 赋值
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
//= 整除等于
**= 幂等于
%= 模等于
逻辑运算符
与(and 并且) 或(or) 非(not 不是)
True and False
True or False
True and not False
优先级:() > not > and > or
查找顺序: 从左向右
比如:print(8 and True) =>
True和False进行逻辑运算时:
and:
一真一假,就是假
同真为真,同假为假
or:
一真一假,就是真
同真为真,同假为假
?面试题
and数字进行逻辑运算时:
数字不为 0 时和不为 False
and运算选择and后边的内容
and运算都为假时选择and前的内容
and 运算一真一假选择假
or 数字进行逻辑运算时:
数字不为 0 时和不为 False
or运算选择or前边的内容
or运算都为假时选择or后边的内容
or 运算一真一假选择真
成员运算法
in(在) not in(不在)
举例:
name = "alex"
msg = input(">>>")
if name in msg:
print(111)
else:
print(222)
编码集(密码本)
ascii
定义:将英文字母和常用符号用特定的数字去表达,但不支持中文
比如:a 一个字符占用8位
gbk(包含ascii)国标
a 一个字符占用8位(1字节)
中文 一个字符占16位(2字节)
unicode
定义:包含所有字符的字符集,解决了世界各地每个地方所用的编码方式不一样的尴尬,让我们更好沟通。
比如:英文 4个字节 32位
中文 4个字节 32位
utf-8 (最流行的编码集)
定义:为了解决Unicode存在内存问题,将Unicode再次编码的一种编码方式
比如:英文 1字节 8位
欧洲 2字节 16位
亚洲 3字节 24位
单位转换:
8bit = 1byte
1024byte = 1KB
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
1024TB = 1EB
1024EB = 1ZB
1024ZB = 1YB
1024YB = 1NB
1024NB = 1DB
常?到TB就够了
原文:https://www.cnblogs.com/ghh520/p/11478209.html