Python for循环及基础用法详解
本文详解Python中for循环的语法结构、range函数的参数用法,以及遍历字符串、列表、元组和字典的多种实现方式。通过索引访问、序列解包和条件判断等代码示例,展示如何高效处理数据集合与累加统计任务。
Python for循环语法基础
Python 提供了 while 和 for 两种循环语句。其中,for 循环主要用于遍历字符串、列表、元组、字典和集合等序列类型。其基本语法结构如下:
for 迭代变量 in 序列:
代码块在循环执行过程中,迭代变量会依次从序列中读取元素并赋值,循环体则是与循环结构关联的多行代码。需要注意的是,Python 3.x 版本中,原有的 xrange() 函数已更名为 range()。
range() 函数的使用
range() 是 Python 的内置函数,用于生成连续整数序列。其语法格式为 range(start, end, step),各参数含义如下:
- start:指定起始值,默认为 0。
- end:指定结束值(不包含该值),此参数不可省略。
- step:指定步长,默认为 1。
例如,range(1, 101) 生成的范围包含从 1 到 100 的所有整数。以下是几个典型的应用场景:
1. 字符串遍历
可以直接使用 for 循环逐个输出字符串中的字符:
name = '张三'
# 变量name,逐个输出各个字符
for ch in name:
print(ch)2. 数值累加与奇数输出
利用 range 生成数字序列进行累加计算,或筛选特定数值:
# 计算 1+2+...+100 的结果
print("计算 1+2+...+100 的结果为:")
result = 0
for i in range(101):
result += i
print(result)# 输出10 以内的所有奇数
print("输出10 以内的所有奇数:")
for i in range(1, 10, 2):
print(i, end=' ')3. 元组遍历
遍历元组时,循环体执行次数等于元素个数:
a_tuple = ('crazyit', 'fkit', 'Charlie')
for ele in a_tuple:
print('当前元素是:', ele)列表与字典的高级遍历
1. 列表遍历与类型判断
在遍历列表时,常需结合 isinstance() 函数判断元素类型,从而进行特定处理(如数值累加):
src_list = [12, 45, 3.4, 13, 'a', 4, 56, 'crazyit', 109.5]
my_sum = 0
my_count = 0
for ele in src_list:
# 如果该元素是整数或浮点数
if isinstance(ele, int) or isinstance(ele, float):
print(ele)
my_sum += ele
my_count += 1
print('总和:', my_sum)
print('平均数:', my_sum / my_count)2. 索引遍历列表
除了直接遍历元素,还可以通过索引访问列表元素。利用 range(0, len(a_list)) 生成索引范围:
a_list = [330, 1.4, 50, 'fkit', -3.5]
# 遍历0到len(a_list)的范围
for i in range(0, len(a_list)):
# 根据索引访问列表元素
print("第%d个元素是 %s" % (i, a_list[i]))3. 字典遍历方法
字典提供了三种主要的遍历方式:items() 返回所有 key-value 对,keys() 返回所有 key,values() 返回所有 value。使用 items() 时,可通过序列解包同时声明两个变量:
my_dict = {'语文': 89, '数学': 92, '英语': 80}
# 通过items()方法遍历所有key-value对
for key, value in my_dict.items():
print('key:', key)
print('value:', value)
print('-------------')
# 通过keys()方法遍历所有key
for key in my_dict.keys():
print('key:', key)
print('value:', my_dict[key])
print('-------------')
# 通过values()方法遍历所有value
for value in my_dict.values():
print('value:', value)4. 字典统计与字符串反转
利用字典可以统计列表中元素的出现次数,或通过循环实现字符串反转:
# 统计列表元素出现次数
src_list = [12, 45, 3.4, 12, 'fkit', 45, 3.4, 'fkit', 45, 3.4]
statistics = {}
for ele in src_list:
if ele in statistics:
statistics[ele] += 1
else:
statistics[ele] = 1
for ele, count in statistics.items():
print("%s的出现次数为:%d" % (ele, count))# 翻转字符—将“我是个大好人!我爱我的家”反转
yuanJu = "我是个大好人!我爱我的家"
result = ""
for x in yuanJu:
result = x + result
print(result)5. for-else 结构
Python 支持 for...else 语法,当循环正常结束(未被 break 中断)时执行 else 块:
# 打印 1—100之间的偶数
num = range(1, 101)
for n in num:
if n % 2 == 0:
print(n)
else:
print("以上数字为1-100之内的偶数")
以上就是Python for循环及基础用法的详细内容,更多关于Python循环结构、range函数用法及序列遍历的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













