for_in循环
for-in循环也可以简单称为for循环
in表达从(字符串,序列等)中依次取值,又称为遍历(全部都要取到)
for-in遍历的对象必须是可迭代对象
目前可以简单认为只有字符串和序列是可迭代对象
它是一次从可迭代对象中取出元素赋值给自定义的变量
for-in的语法结构:
for 自定义的变量 in 可迭代对象:
循环体
example:
点击查看代码
for item in 'hello':
print(item)
output:
h
e
l
l
o
以上的代码就可以清晰的看出for-in循环的大致作用了,从迭代对象中逐个取出元素,直到遍历完成,然后取出的元素会依次赋值给item,即自定义的变量
同理range产生的整数序列也是一个可迭代对象,所以前面会先介绍range
这样子就逐渐与C中的for循环重合了,但是这边字符串也是可迭代对象,比C还强大
循环体内不需要访问自定义变量,可以将自定义变量替代为下划线
如果循环体中的自变量没有使用,那么就可以在定义变量的前面加上一个_这样就可以了,应该是为了可读性的要求,因为笔者实测,如果此时打印输出_自定义变量名,仍然是可以使用的,因此这项要求仅仅是为了可读性,程序实现上并不会因此改变
点击查看代码
r = range(2, 101, 2)
sum = 0
for i in r:
sum+=i
print(sum)
以上是通过for-in循环计算从1到100之间的偶数和
不过貌似for的效率要高于while?
for_in循环的更多相关文章
- for_in循环练习题_100到999之间的水仙花数
水仙花数 153 == 3**3 + 5**3 + 1**3 点击查看笔者代码 for i in range(100, 1000): a = i % 10 b = i // 100 c = (i // ...
- for-in循环等
一.for-in循环 in表示从(字符串.序列等)中一次取值,又称为遍历 其便利对象必须是可迭代对象 语法结构: for 自定义的变量 in 可迭代对象: 循环体 for item in 'Pytho ...
- 【学习笔记】JS知识点整理
1 原型/原型链 1-1 原型 定义:原型是function对象的一个属性,定义了构造函数制造出的对象的公共祖先.通过该构造函数产生的对象,可以继承该原型的属性和方法. 原型是一个对象. 可以利用原型 ...
- JavaScript 学习笔记(二)
学习内容: 一.变量的定义 二.JS的基本数据类型 三.JS的基本语法 1.变量的定义: 任何语言中最基本的东西就属于变量了,那么如何定义变量以及运用,其实是一件很简单的事情.. JS中提供了如何 ...
- python应用-n颗骰子的和出现的次数
from random import randint def roll_dice(n): total=0 for _ in range (n): num=randint(1,6) total+=num ...
- 高性能JavaScript 循环语句和流程控制
前言 上一篇探讨了达夫设备对于代码性能的影响,本文主要探讨并且测试各种常见的循环语句的性能以及流程控制中常见的优化. 循环语句 众所周知,常用的循环语句有for.while.do-while以及for ...
- 【.net 深呼吸】细说CodeDom(8):分支与循环
有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
随机推荐
- muduo源码分析之muduo简单运用
今天不先实现muduo项目,我们先来看下muduo库的基本使用,只有了解了如何用,才能在写代码的时候知道自己写的找个函数是干嘛的,实际上是怎么使用的这个函数.首先说简单点,就是定义一个Server,设 ...
- 注解,lombok
使用注解开发 UserMapper public interface UserMapper { @Select("select * from db4.user") List< ...
- .NET混合开发解决方案12 网页JS调用C#方法访问WinForm或WPF窗体
系列目录 [已更新最新开发文章,点击查看详细] WebView2控件应用详解系列博客 .NET桌面程序集成Web网页开发的十种解决方案 .NET混合开发解决方案1 WebView2简介 .NE ...
- VMware虚拟机中安装Linux操作系统(ubuntu)
一.准备工作: 1.下载VMware虚拟机 下载地址:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evalua ...
- 1.0 vue开篇之作
vue官网链接:https://cn.vuejs.org/ 一. vue简介 vue目前分为2.X版和3.X版,本文以2.X版为准,后续会更新3.X版本相关教程,建议从2.X版开始学起,因为此版本经过 ...
- 分享一个 SpringCloud Feign 中所埋藏的坑
背景 前段时间同事碰到一个问题,需要在 SpringCloud 的 Feign 调用中使用自定义的 URL:通常情况下是没有这个需求的:毕竟都用了 SpringCloud 的了,那服务之间的调用都是走 ...
- 【FineBI】FineBI连接阿里云mysql教程
因为某些原因需要查看数据信息,之前连接成功一次,今天软件更新了以后发现连接信息丢. 又重新折腾了一下. 主要有2个地方: 1.查看阿里云数据库外网连接地址:打开云数据库RDS-实例列表-管理-数据库连 ...
- 素性测试+PollardRho
素数判定 暴力 本质上是检查其是否能够不用其本身进行质因数分解. 直接枚举从区间 \([2,n)\) 的数看其是否整除 \(n\) 即可.但是其实发现我们只要枚举到 \(\sqrt n\) 即可,复杂 ...
- 二进制固件函数劫持术-DYNAMIC
背景介绍 固件系统中的二进制文件依赖于特定的系统环境执行,针对固件的研究在没有足够的资金的支持下需要通过固件的模拟来执行二进制文件程序.依赖于特定硬件环境的固件无法完整模拟,需要hook掉其中依赖于 ...
- Jmeter(五十三) - 从入门到精通高级篇 - 懒人教你在Linux系统中安装Jmeter(详解教程)
1.简介 我们绝大多数使用的都是Windows操作系统,因此在Windows系统上安装JMeter已经成了家常便饭,而且安装也相对简单,但是服务器为了安全.灵活小巧,特别是前几年的勒索病毒,现在绝大多 ...