while 条件:
条件成立之后循环执行的子代码块
每次执行完循环体子代码之后都会重新判断条件是否成立
如果成立则继续执行子代码如果不成立则退出
break用于结束本层循环
1.直接让代码再次回到while循环的条件判断处,重新判断条件在执行,这就叫做continue
当while循环没有被人为中断(break)的情况下才会走else/执行子代码
当while循环被人为中断(break)的情况不会走else/执行子代码
"""死循环会让CPU极度繁忙 甚至奔溃"""
1.or循环能做到的事情 while循环都可以做到
但是for循环语法更加简洁 并且在循环取值问题上更加方便
现在我有一个班级列表,里面存了几个人名字,循环取出列表每一个元素/数据,打印出来 循环取出列表每一个元素,并打印
while实现:
现在我有一个班级列表,里面存了几个人名字,循环取出列表每一个元素/数据,打印出来 循环取出列表每一个元素,并打印 for循环可以把列表内的元素都打印出来
从头开始,把第一个字符,赋值给变量名i,打印i之后这个子代码就结束了, 结束之后这个i就解放了,就会不绑定这个i了,就绑定第二个字母e,然后在绑定l,打印l,这个叫for循环,迭代取值。
for循环字典:默认只能拿到k
range是专门配合for循环使用的,频率非常的高
range相当于是一个数字范围,
第一种:一个参数 从0开始 顾头不顾尾
第二种:两个参数 自定义起始位置 顾头不顾尾
第三种:三个参数 第三个数字用来控制等差的数值
range(范围)
https://movie.douban.com/top250 第一页
https://movie.douban.com/top250?start=25&filter= 第二页
https://movie.douban.com/top250?start=50&filter= 第三页
https://movie.douban.com/top250?start=75&filter= 第四页
网址链接 获取
range在不同版本的解释器中 本质不同
在python2.X中range会直接生成一个列表
在python2.X中有一个xrange也是迭代器(老母猪)
在python3.X中range是一个迭代器(老母猪) 节省内存空间
'''python2.X中xrange就是python3.x里面的range'''
for+break
break:功能也是用于结束本层循环
for+continue
continue:功能也是用于结束本次循环
for+else
else:也是在for循环正常结束的情况下才会执行
在日常生活中不同类型的数据具有不同的功能 # eg:表格数据文件具有处理表格的各项功能(透视表 图形化 公式计算) 视频数据文件具有快进 加速等各项功能 程序里也有不同的数据类型,每个数据类型也有它独有的功能 ## 数据类型的内置方法 方法在代码中展示出来的效果 就是 名字() 如:print() inpit() id()等 # 整型 (int) i = 999 # 唯一需要掌握的就是 类型转换 res = '123' # '123'类型字符串 print(type(res)) # 查看res类型为(字符串) res = int(res) # 将res转换为(整型) print(type(res)) # 查看res类型为(整型)
# int在做类型转换的时候 只能转换纯数字 int('123.123') # 报错 整型是不识别小数字的 int('jason123') # 报错 不识别除数字以外的数据
# # int其实还可以做进制数转换 print(bin(100)) # 将十进制的100转换成二进制 0b1100100 #十进制逢十进一 print(oct(100)) # 将十进制的100转换成八进制 0o144 #八进制逢八进一 print(hex(100)) # 将十进制的100转换成十六进制 0x64 #十六进制逢十六进一 # 0b开头为二进制数 0o开头为八进制数 0x开头为十六进制数 # 怎么把其他进制数转换成十进制 print(int('0b1100100', 2)) # 100 # 前面放int 后面字符串形式 后面放上是几进制数 print(int('0o144', 8)) # 100 print(int('0x64', 16)) # 100 # 相互类型的转换
*1.浮点型float
类型转换:
res = '123.23' print(type(res)) # class str 输入输出都为字符串 res = float(res) # 将res所指向的值转换成浮点型,并重新赋值给res变量名 print(type(res)) # 查询res类型为:浮点型 print(float('123')) # 将整型转换成浮点型 123.0 print(float('jason123')) # 报错 不识别 数字 小字点 以外的
# 字符串的 str # 类型转换 # * 任何数据类型都可以转换成字符串 print(str(123)) # 转整型 print(str(123.21)) # 转浮点型 print(str([1, 2, 3, 4])) # 转列表 print(str({'name': 'jason', 'pwd': 123})) # 转字典 print(str((1, 2, 3, 4))) # 转元组 print(str(True)) # 转布尔值 print(str({1, 2, 3, 4})) # 转集合 # 都转成了字符串
res = 'hello world' # # 索引取值 # print(res[1]) # e # # # 切片操作 # 顾头不顾尾 # print(res[1:4]) # ell # 步长操作 print(res[1:10:1]) # ello worl # 写1和不写1一样的,1就是不跳,2就是跳1格 print(res[1:10:1]) # ello worl print(res[1:10:2]) # el # 2:跳一格 隔一格取一个 # 帮助你有规则的去取,跳几格,跳几格。
res = 'hello world!'
1.索引支持负数
print(res[-1]) # ! 取最后一位
2.切片支持负数
print(res[-5:-1]) # orld 顾头不顾尾
3.步长支持负数
print(res[-5