您现在的位置是:首页 > 正文

第七节:元组&字典

2024-01-30 21:24:32阅读 0

for循环遍历

  • 通过for循环来遍历列表
语法
for 变量 in 序列(遍历的规则):
    代码块
  • 示例1: for循环访问列表
# for 循环访问列表
list = ['woodman', 'Alan', 'Bobo']
for name in list:
    print(name)
'''
结果:
woodman
Alan
Bobo
'''

注意: name 这个变量是在 for 循环中定义的,意思是,依次取出 list 中的每一个元素,并把元素赋值给 name,然后执行for循环体

  • 示例2: for 循环访问字典
dict = {
   'woodman': 98, 'Alan': 89, 'Bobo': 56}
for key, value in dict.items():
    print(key, value)
'''
输出结果:

Alan 89 
woodman 98 
Bobo 56
'''
  • 示例3: for 循环访问字符串
# for 循环访问字符串,可以依次读取每个字符
for a in '木头人':
    print(a)
  • for … else … (比较少用到)
    for <变量> in <循环序列>:
    【循环体】
    else:
    【else的语句块】
    释:for 遍历序列,无 break 结束当前循环,循环结束后执行 else 语句块
    示例1:
list = ['woodman', 'Alan', 'Bobo']
for name in list:
    print(name)
else:
    print('循环完整结束后执行')

示例2:

list = ['woodman', 'Alan', 'Bobo']
for name in list:
    print(name)
    if name == 'Alan':
        break  # break 结束循环,for 下的 else 也不会执行
else:
    print('循环完整结束后执行')

示例3:

list = ['woodman', 'Alan', 'Bobo']
for name in list:
    if name == 'Alan':
        continue  # continue 跳过本次循环,进入下一次循环
    print(name)  # 如果被 continue 本条语句不会执行
else:
    print('循环完整结束后执行')

注意:continue 只是跳过本次循环,循环结束后 else 语句块最后被执行

  • for循环嵌套
for <外层循环变量> in <外层循环序列>:
     for <内层循环变量> in <内层循环序列>:
         【内层循环体】
     【外层循环体】 

这个只是一个for 与 for 的循环嵌套,还可以使用 for 与 while 嵌套
循环嵌套经典示例1:倒三角的九九乘法表:

# 九九乘法表 倒三角,你可以试试输出正三角
for i in range(1, 10): 
    for j in range(i, 10):
        print('%d * %d = %d' % (i, j, i * j), end='\t')
    print('')  # 控制换行

循环嵌套经典示例2:冒泡排序

# 冒泡排序
list = [9, 2, 7, 4, 5, 6, 3, 8, 1, 10]
length = len(list)
for i in range(length):
    for j in range(length - i):
        if list[length - j - 1] < list[length - j - 2]:
            list[length - j - 1], list[length - j - 2] = list[length - j - 2], list[length - j - 1]
print(list)

• 注意: for循环的代码块会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中的一个元素赋值给变量,所以我们可以通过变量来获取列表中的元素

range()类控制循环访问

  • range(start, stop[, step]) 从 start 开始到 stop 结束(不包含 stop)返回一个整数序列的迭代对象, step 为他的步长
  • range(stop)从0开始到stop结束(不包含 stop)返回一个产生整数序列的迭代对象
    参数说明
    • ·start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

示例:


 

网站文章

  • java构造一个银行账户类

    java构造一个银行账户类

    (1)思路数据成员用户的账户名称、用户的账户余额(private数据类型)方法包括开户(设置账户名称及余额),利用构造方法完成查询余额。取款存款(2)代码实现package p1;import jav...

    2024-01-30 21:24:25
  • JDK和Maven在Windows下安装和配置

    JDK和Maven在Windows下安装和配置

    文章目录1.JDK1.1 下载安装1.2 配置环境变量1.3 验证安装2.Maven2.1 下载安装2.2 配置环境变量2.3 修改本地仓库位置2.4 配置阿里云的中央仓库2.5 验证和测试1.JDK...

    2024-01-30 21:23:55
  • bzoj2242

    2242: [SDOI2011]计算器 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 3179 Solved: 1248 [Submit][Status][Discuss] Description 你被要求设计一个计算器完成以下三项任务: 1、给定y,z,p,计算Y^Z Mod P 的值; 2、给定y,z,p,计算满足xy≡

    2024-01-30 21:23:48
  • JS逆向混淆加密参数分析,反调试分析

    JS逆向混淆加密参数分析,反调试分析

    闲逛github看到issues别人发的一个网站,网址:http://ys.fgj.taiyuan.gov.cn/Firsthand/tyfc/publish/p/ProjectList.do 随便勾选菜单查询,上抓包 如下图requestbody 分析一下requestbody的生成过程,老规矩F12 匿名函数的无限debugger,直接删掉debugger代码即可,有2个debugger...

    2024-01-30 21:23:40
  • 实现每日早安推送

    实现每日早安推送

    做一个程序员给女朋友的浪漫礼物吧,微信推送每日早安。

    2024-01-30 21:23:10
  • Linux环境下使用阿里云盘 热门推荐

    Linux环境下使用阿里云盘 热门推荐

    一直有个直播推流的想法,那就是把阿里云盘上的视频资源,在不下载到本地的情况下放在服务器上直播推流,这个时候就需要阿里云盘能能支持Linux环境下使用了。 目前阿里云盘官方还没有推出Linux环境下的版...

    2024-01-30 21:23:03
  • 软件测试常用的oracle语句,Oracle 一些常用的语句记录

    1、oracle数据库锁表查询:select db.object_name,sess.sid,sess.serial#,sess.module,sess.action ,'alter system k...

    2024-01-30 21:22:54
  • 本科阶段的一点总结

    先一点随笔大学转眼过去三年,这几年参加了各种比赛,硬件和软件也都做了一些,也靠这些和还算过得去的成绩拿到了保研名额,不过因为一些原因选择留在了本校直接攻读phd。。。 以后应该是学术向+技术向了,所以在这里开个坑,也算是对自己以后的学习的一个记录吧,主攻的方向该是机器学习和人工智能。 之后的博客也主要在这些方向上更新一些博文,或者有一些比较新颖的想法也会放上来和大家交流,决定读phd后感觉自己的

    2024-01-30 21:22:18
  • 【杂谈】网络修复杂谈

    前言断网,是仅次于断水、断电的危机,对于部分依赖于网络的人来说,可能重要性更加突出。这里主要谈一谈网络修复的方法与一些常见的故障。正题首先要知道怎么修复网络,就需要大致了解网络的运作方式,正如一个能够装机的人要会拆机、能够做网络防御的人要懂得网络攻击的原理。这里主要通过对几个名词的解析来大致描述网络的运作方式。由于这里只打算大致讲一下网络的工作方式,过多的说明可能比不上形象的比喻。

    2024-01-30 21:22:09
  • Linux与Windows共享文件、互传文件

    Linux与Windows共享文件、互传文件

    1.设置共享目录通过虚拟机,把一个windows目录共享,让linux可以访问这个目录2.复制文件夹

    2024-01-30 21:22:02