控制流程之while,for和数据类型的内置方法
2022/3/8 23:17:40
本文主要是介绍控制流程之while,for和数据类型的内置方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
while...else组合使用
while和else的连用一般情况下用的较少,原因在于while不被break主动结束循环的情况下才会执行else,
只能正常结束循环体代码之后才会去执行else的子代码
''' 语法结构: # else与while同一缩进 while 条件: while的子代码,即循环体代码(可多行) else: 如循环体代码正常运行 则执行else的子代码(可多行) '''
- 用例:
num = 0 # 定义变量num用于计数 while num < 10: #循环10次 num += 1 #每次加一 if num == 6: # if判断当num==6执行子代码 continue # 跳过本次循环 回到本层while继续执行循环体 print(num, end=' ') else: # 不被break打断循环,循环体正常执行完毕 继续执行以下子代码 print('鸡哥牛皮') # 可正常被执行 #输出结果:1 2 3 4 5 7 8 9 10 鸡哥牛皮
- 反例
死循环与while嵌套
死循环
当while一直满足条件,且循环体不会被中断和强制结束循环体则会一直被cpu执行下去 # 死循环极其占用电脑资源和考验其电脑的性能 甚至会造成硬件的损坏 eg: num = 0 while True: # 1恒为真 while num > 10: # 2为False不执行下面的子代码 if num == 6: break print(num, end=' ') num += 1 else: # 3子代码会一直打印下去 print('鸡哥牛皮')
while嵌套
就是再原来while的基础上再套上一层while就像套娃一样理论上可以无限嵌套下去,但一般请款下两到三层就够用了 ''' 语法结构: while 条件: while 条件: while 条件: ... ''' eg: num = 0 flag = True while flag: # 第一层 while num < 10: # 第二层 num += 1 while num == 6: # 第三层 flag = False print(num) else: print('鸡哥牛皮')
for循环
for循环的使用
for循环的作用跟while循环差不多,for循环能做到的事情用while循环也可以做到 但是我们还是要学习的,因为for循环的语法更加简单 平时的使用频率更高 一般情况下涉及到循环取值的时候 都会考虑使用for循环 ''' 语法结构: for 变量名 in for循环的对象: # 字符串、列表、字典、元组、集合 循环体代码 #每次执行都会将循环对象中的一个元素赋值给变量名 '''
for循环作用于列表
name_list = ['jason', 'kevin', 'tony', 'tank', 'oscar'] #使用while循环依次打印出列表中所有的元素 count = 0 while count < 5: print(name_list[count]) count += 1 #使用for循环依次打印出列表中所有的元素 for name in name_list: print(name)
for循环作用于字符串:依次取出每一个字符
for i in 'hello world': print(i, end='') # hello world 每个字母和空格都会被打印
for循环作用于字典(特殊):循环字典只能获取到字典中的k 无法直接获取v值
dct = {'name': "aili", 'age': 18, 'hobby': 'game'} for i in dct: print(i)
for循环作用于元组
# 跟for循环作用列表十分相似 for i in (11, 22, 33, 44, 55): print(i)
for循环作用于循环集合:字典与集合内部的元素都是无序的
for i in {11, 22, 33, 44, 55, 66}: print(i)
for循环补充
"""以下用法与while一致""" # for+break break结束本层for循环 # for+continue continue结束本次for循环 直接开始下一次 # for+else for循环正常结束之后运行else子代码 # for循环的嵌套
拓展range关键字
就相当与一个数据集合,简单点讲就是一个用于放数据的容器 专业术语叫'迭代器' 相比与列表等更加节省空间 # 用法1 括号内只写一个数字 默认从0开始 顾头不顾尾 for i in range(10): # 打印数字1~9 print(i) # 用法2 括号内写两个数字 自定义起始位置 顾头不顾尾 for i in range(1, 10): # # 打印数字1~9 print(i) # 用法3 括号内写三个数字 第三个数字表示的是等差数列的差值 默认情况下是1 for i in range(1, 10, 2): # 第三个数字2就是步长的意思 相当与等差数列的差值 print(i)
数据类型的内置方法
- 在编程软件中 采用句点符快速查看
整型int的内置方法
# 类型转换 cunt = '132' # 字符串'123' print(cunt, type(cunt)) cunt = int(cunt) # 将字符串'123'转换为整型123 print(cunt, type(cunt)) """int方法只能转换纯数字的字符串"""
拓展: 进制数转换
# print(bin(100)) # 0b1100100 二进制(0b开头) # print(oct(100)) # 0o144 八进制(0o开头) # print(hex(100)) # 0x64 十六机制(0x开头) # 将其他机制转换成十进制 print(int('0b1100100', 2)) print(int('0o144', 8)) print(int('0x64', 16))
浮点型float的内置方法
1.类型转换 res = float('11.11') print(res, type(res)) # 11.11 res = float('11') print(res, type(res)) # 11.0 float('abc')
字符串str的内置方法
#str可以转换所有的基本数据类型 str(要转换的类型) s1 = 'hello world' 1.索引取值 print(s1[0]) 2.切片操作 print(s1[2:4]) # 顾头不顾尾 3.步长 print(s1[2:9:1]) # 第三个参数是步长 默认是1 依次获取 print(s1[2:9:2]) # 间隔一个取一个 索引取切片扩展 print(s1[-1]) # 获取最好一个字符 print(s1[-1:-5:-1]) # dlro 第三个参数还可以控制索引的方向 print(s1[-5:-1]) # worl 4.统计字符串中字符的个数 print(len(s1)) # 11 5.成员运算 print('ll' in s1) 6.移除字符串首位指定的字符(使用频率较高) name = ' jason ' print(len(name)) res = name.strip() # 默认移除字符串首尾的空格 print(res, len(res)) name1 = '$$$$jas$on$$$$' print(name1.strip('$')) username = input('username>>>>:').strip() if username == 'jason': print('我想去干饭了!!!') 7.按照指定的字符切割字符串 data = 'jason|123|DBJ' print(data.split('|')) # ['jason', '123', 'DBJ'] name, pwd, hobby = data.split('|') # 解压赋值 print(data.split('|', maxsplit=1)) # ['jason', '123|DBJ'] print(data.rsplit('|', maxsplit=1)) # ['jason|123', 'DBJ'] """split方法切割完字符串之后是一个列表"""
这篇关于控制流程之while,for和数据类型的内置方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-102025 蛇年,J 人直播带货内容审核团队必备的办公软件有哪 6 款?
- 2025-01-10高效运营背后的支柱:文档管理优化指南
- 2025-01-10年末压力山大?试试优化你的文档管理
- 2025-01-10跨部门协作中的进度追踪重要性解析
- 2025-01-10总结 JavaScript 中的变体函数调用方式
- 2025-01-10HR团队如何通过数据驱动提升管理效率?6个策略
- 2025-01-10WBS实战指南:如何一步步构建高效项目管理框架?
- 2025-01-10实现精准执行:团队协作新方法
- 2025-01-10如何使用工具提升活动策划团队的工作效率?几个必备工具推荐
- 2025-01-10WiX 标签使用介绍:打造专业安装程序的利器