当前位置: 首页 > news >正文

python基础语法 004-2流程控制- for遍历

1 遍历

1.1 什么是遍历?

  • 可以遍历的元素:字符串、列表、元组、字典、集合
  • 字符串是可以进行for 循环。(容器对象,序列)
  • 可迭代对象iterable

例子:

1 )、for遍历字符串:

name ='xiaoming'
for e in name:print(e)-------------------结果------------
x
i
a
o
m
i
n
gProcess finished with exit code 0

2 )、for循环遍历列表

#播放歌曲
songs = ['晴天', '花海', '新地球', '雨爱', '舞娘', '逆战']
print("正在播放歌曲:{}".format(songs[0]))
print("正在播放歌曲:{}".format(songs[1]))
print("正在播放歌曲:{}".format(songs[2]))#怎么顺序播放song
#for循环,遍历,迭代,是字典播放所有列表(序列)当中的元素
#element 代表通过变量element接受songs的每一个元素
for element in songs:#print(element)print("正在播放的歌曲:{}".format(element))------------结果------------------
正在播放的歌曲:晴天
正在播放的歌曲:花海
正在播放的歌曲:新地球
正在播放的歌曲:雨爱
正在播放的歌曲:舞娘
正在播放的歌曲:逆战
#遍历列表其他用法
dalao = ['q', 'ee', 'aaa']
for i in dalao[1:]:print(i)#对字符串进行foe循环,打印每一个字符
for i in dalao[1]:print(i)----结果----------------------
ee
aaa
e
e

3)、for遍历字典

#元组可不可以使用循环,可以
#字典可不可以使用for循环?
#对字典使用for循环,取到的默认是所有的keyname = {"name":"xiaoho", "age":16, "hobby":"coding"}
for i in name:print(i)#取所有的值?
for i in name.values():print(i)
#或:
for i in name:print(name[i])#取所有的值:
for key, value in name.items():print("key:{}, values:{}".format(key,value))----------------------结果--------------------
name
age
hobby
xiaoho
16
coding
xiaoho
16
coding
key:name, values:xiaoho
key:age, values:16
key:hobby, values:codingProcess finished with exit code 0

4) 、for遍历集合

my = {'a', 'b', 'c'}
for i in my:print(i)-----------结果 ------------
#每次打印出来的可能不一样
b
c
a

1.2  for_list实现逻辑

#index = 0
songs = ['晴天', '花海', '新地球', '雨爱', '舞娘', '逆战']
for song in songs:#song = '晴天' ===> 索引为0 song[0]print("正在播放的歌曲{}".format(song))#把索引 + 1的逻辑在里面#index += 1#song  '花海' =====>song[1]

 可以使用Debug for 来来查看for遍历实现的过程

1.3 for循环的嵌套

A、 两个不同列表嵌套

#嵌套
dalaos = ["xiaoming","apple"]
songs = ['晴天', '花海', '新地球', '雨爱', '舞娘', '逆战']
for song in songs:for dalao in dalaos:print("song:{}, dalao:{}".format(song, dalao))-------------结果-----------
song:晴天, dalao:xiaoming
song:晴天, dalao:apple
song:花海, dalao:xiaoming
song:花海, dalao:apple
song:新地球, dalao:xiaoming
song:新地球, dalao:apple
song:雨爱, dalao:xiaoming
song:雨爱, dalao:apple
song:舞娘, dalao:xiaoming
song:舞娘, dalao:apple
song:逆战, dalao:xiaoming
song:逆战, dalao:appleProcess finished with exit code 0

B、在嵌套列表取元素:

#for 嵌套列表
my_list = [['无名之辈','雨爱'],['景天', '晴天'],['新地球', "新月球"],['巧克力', "蛋黄派"]]
for group in my_list:# 每个组的列表展示print(group)for name in group:print(name)-------------结果----------------
['无名之辈', '雨爱']
无名之辈
雨爱
['景天', '晴天']
景天
晴天
['新地球', '新月球']
新地球
新月球
['巧克力', '蛋黄派']
巧克力
蛋黄派

C、在列表中获取字典:

cases = [{"url" : "http://", "method": "get"},{"url" : "http://examle", "method": "post"}
]for case in cases:# {"url" : "http://", "method": "get"}for key, value in case.items():print(key, value)---------------结果-----------
url http://
method get
url http://examle
method post

1.4 自定义列表

#for循环是循环一个指定的列表
#没有列表可以使用
#打印1-9
#for i in [1,2,3,4,5,6,7,8,9]:
for i in range(1, 10):print(i)for i in range(1, 12, 3):print(i)

 九九乘法表编写

#九九乘法表
for i in range(1, 10):for j in range(1,10):k = i * jprint("i * j = {} * {} = {}".format(i, j, k))

 每执行一个循环进行打印编辑器都会自动换行,怎么让其不换行?

#怎么让其不每执行一个循环就换行
for i in range(1, 10):print(i, end = ',')------------------结果 --------
1,2,3,4,5,6,7,8,9,

1.5 例子,九九乘法表 

方法一:

#九九乘法表 按顺序排列,方法一
for i in range(1, 10):for j in range(1, 10):if j <= i: print("{} * {} = {}".format(i, j, i * j), end = '\t')print()----------结果-----------------
1 * 1 = 1	
2 * 1 = 2	2 * 2 = 4	
3 * 1 = 3	3 * 2 = 6	3 * 3 = 9	
4 * 1 = 4	4 * 2 = 8	4 * 3 = 12	4 * 4 = 16	
5 * 1 = 5	5 * 2 = 10	5 * 3 = 15	5 * 4 = 20	5 * 5 = 25	
6 * 1 = 6	6 * 2 = 12	6 * 3 = 18	6 * 4 = 24	6 * 5 = 30	6 * 6 = 36	
7 * 1 = 7	7 * 2 = 14	7 * 3 = 21	7 * 4 = 28	7 * 5 = 35	7 * 6 = 42	7 * 7 = 49	
8 * 1 = 8	8 * 2 = 16	8 * 3 = 24	8 * 4 = 32	8 * 5 = 40	8 * 6 = 48	8 * 7 = 56	8 * 8 = 64	
9 * 1 = 9	9 * 2 = 18	9 * 3 = 27	9 * 4 = 36	9 * 5 = 45	9 * 6 = 54	9 * 7 = 63	9 * 8 = 72	9 * 9 = 81	Process finished with exit code 0

 方法二:

#方法二
for i in range(1, 10):for j in range(1, i +1):print("{} * {} = {}".format(i, j, i * j), end='\t')print()

相关文章:

python基础语法 004-2流程控制- for遍历

1 遍历 1.1 什么是遍历&#xff1f; 可以遍历的元素&#xff1a;字符串、列表、元组、字典、集合字符串是可以进行for 循环。&#xff08;容器对象&#xff0c;序列&#xff09;可迭代对象iterable 例子&#xff1a; 1 &#xff09;、for遍历字符串&#xff1a; name xiao…...

【高考志愿】医学

目录 一、明确职业定位与兴趣 二、选择大学与专业 三、考虑身体条件 四、了解录取规则 五、考虑选科与成绩 六、注意志愿填报策略 七、关注就业前景 八、资深医生的建议 高考志愿填报学医时&#xff0c;考生需要综合考虑多个因素&#xff0c;确保自己能够做出明智的选择…...

音视频开发31 FFmpeg 编码- avcodec_find_encoder和avcodec_find_encoder_by_name

avcodec_find_encoder /** * Find a registered encoder with a matching codec ID. * * param id AVCodecID of the requested encoder * return An encoder if one was found, NULL otherwise. */ AVCodec *avcodec_find_encoder(enum AVCodecID id); 那么这个 AVCodec…...

大模型压缩:基于贝叶斯优化的自适应低秩分解

1.方法 1.1 基于特征的高维空间低秩分解 PCA已经是老朋友了&#xff0c;每次一说主成分都会出现PCA。这篇文章1利用预训练数据的子集作为校准数据集 D c a l { x i } i 1 n \mathcal{D}_{cal}\{x_{i}\}_{i1}^{n} Dcal​{xi​}i1n​&#xff0c;首先用校准数据集的样本协方差…...

【Python函数编程实战】:从基础到进阶,打造代码复用利器

文章目录 &#x1f68b;前言&#x1f680;一、认识函数&#x1f308;二、函数定义❤️三、函数调用⭐四、实参与形参&#x1f4a5;1. 形式参数&#x1f6b2;2. 实际参数&#x1f525;1. 位置参数☔2. 关键字参数&#x1f3ac;3. 默认参数&#x1f525;4. 可变数量参数(不定长参…...

ZooKeeper 应用场景深度解析

✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心哦&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; 目录 引言 1.…...

动手学深度学习(Pytorch版)代码实践 -计算机视觉-41目标检测数据集

41目标检测数据集 import os import pandas as pd import torch import torchvision import matplotlib.pylab as plt from d2l import torch as d2l# 数据集下载链接 # http://d2l-data.s3-accelerate.amazonaws.com/banana-detection.zip# 读取数据集 #save def read_data_b…...

2.2章节python的变量和常量

在Python中&#xff0c;变量和常量有一些基本的概念和用法&#xff0c;但需要注意的是&#xff0c;Python本身并没有内置的“常量”类型。然而&#xff0c;程序员通常会遵循一种约定&#xff0c;即使用全部大写的变量名来表示常量。 一、变量 在Python中&#xff0c;变量是一…...

豆包文科成绩超了一本线,为什么理科不行?

卡奥斯智能交互引擎是卡奥斯基于海尔近40年工业生产经验积累和卡奥斯7年工业互联网平台建设的最佳实践&#xff0c;基于大语言模型和RAG技术&#xff0c;集合海量工业领域生态资源方优质产品和知识服务&#xff0c;旨在通过智能搜索、连续交互&#xff0c;实时生成个性化的内容…...

Java多线程编程实践中的常见问题与解决方案

Java多线程编程实践中的常见问题与解决方案 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; **1. **引言 Java多线程编程是现代软件开发中不可或缺的一部分&a…...

WebStorm配置路径别名(jsconfig.json)

项目是 ViteVueTs 新建一个 jsconfig.json文件 {"compilerOptions": {"baseUrl": ".","paths": {"/*": ["./src/*"]}},"exclude": ["node_modules", "dist"] }然后在 vite.confi…...

[吃瓜教程]南瓜书第4章决策树

1.决策树的算法原理 从逻辑角度&#xff0c;条件判断语句的组合&#xff1b;从几何角度&#xff0c;根据某种准则划分特征空间&#xff1b; 是一种分治的思想&#xff0c;其最终目的是将样本约分约纯&#xff0c;而划分的核心是在条件的选择或者说是**特征空间的划分标准 ** …...

Redis 面试题完整指南:深度解析基础、进阶与高级功能

基础知识 1. 什么是Redis&#xff1f; Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的、基于内存的数据结构存储系统&#xff0c;既可以用作数据库、缓存&#xff0c;也可以用作消息中间件。它支持多种数据结构&#xff0c;如字符串、哈希、列表、集合、…...

spring 枚举、策略模式、InitializingBean初使化组合使用示例

实现一个简单的文本处理系统。 在这个系统中&#xff0c;我们将定义不同类型的文本处理策略&#xff0c;比如大小写转换、添加前缀后缀等&#xff0c;并使用工厂模式来管理这些策略。 1 定义一个枚举来标识不同的文本处理类型 public enum TextProcessTypeEnum {UPPER_CASE,LO…...

嵌入式学习——硬件(IIC、ADC)——day56

1. IIC 1.1 定义&#xff08;同步串行半双工通信总线&#xff09; IIC&#xff08;Inter-Integrated Circuit&#xff09;又称I2C&#xff0c;是是IICBus简称&#xff0c;所以中文应该叫集成电路总线。是飞利浦公司在1980年代为了让主板、嵌入式系统或手机用以连接低速周边设备…...

vCenter VXR01405C ALARM Certificate is about to expire

vCenter VXR01405C ALARM Certificate is about to expire 需要更新证书 步骤如下 ===vCenter=== root@vc [ ~ ]# for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo STORE $i; sudo /usr/lib/vmware-vmafd/b STORE MACHINE_SSL_CERT Alias : __MACHINE…...

安装和微调大模型(基于LLaMA-Factory)

打开终端&#xff08;在Unix或macOS上&#xff09;或命令提示符/Anaconda Prompt&#xff08;在Windows上&#xff09;。 创建一个名为lora的虚拟环境并指定Python版本为3.9。 https://github.com/echonoshy/cgft-llm/blob/master/llama-factory/README.mdGitHub - hiyouga/…...

使用docker搭建squid和ss5

docker run -d --name squid-container -e TZAsia/Shanghai -p 自定义端口并记得开放:3128 ubuntu/squid docker exec -it squid-container /bin/bash apt update && apt install vim # 修改 http_port 3128 为 http_port 0.0.0.0:3128 # 修改 http_access deny all 为…...

大数据面试题之Flink(1)

目录 Flink架构 Flink的窗口了解哪些&#xff0c;都有什么区别&#xff0c;有哪几种?如何定义? Flink窗口函数&#xff0c;时间语义相关的问题 介绍下Flink的watermark(水位线)&#xff0c;watermark需要实现哪个实现类&#xff0c;在何处定义?有什么作用? Flink的…...

策略模式、工厂模式和模板模式的应用

1、策略模式、工厂模式解决if else Cal package com.example.dyc.cal;import org.springframework.beans.factory.InitializingBean;public interface Cal extends InitializingBean {public Integer cal(Integer a, Integer b); }Cal工厂 package com.example.dyc.cal;impo…...

内存分配函数malloc kmalloc vmalloc

内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker &#xff1b;并安装。 基础操作不再赘述。 打开 macOS 终端&#xff0c;开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

Netty从入门到进阶(二)

二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于…...

三分算法与DeepSeek辅助证明是单峰函数

前置 单峰函数有唯一的最大值&#xff0c;最大值左侧的数值严格单调递增&#xff0c;最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值&#xff0c;最小值左侧的数值严格单调递减&#xff0c;最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)

cd /home 进入home盘 安装虚拟环境&#xff1a; 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境&#xff1a; virtualenv myenv 3、激活虚拟环境&#xff08;激活环境可以在当前环境下安装包&#xff09; source myenv/bin/activate 此时&#xff0c;终端…...