python for循环

Python列表常见操作和注意

自古美人都是妖i 提交于 2020-02-08 11:09:38
常见操作 列表很常用,每一个元素之间用 , 隔开。 列表中的每一个元素可以是任意类型的数据 数字,字符串,列表,元组,集合,字典 列表可进行的操作 索引(从0开始)、切片、加、成员检查(in,not in),for循环。 Python 表达式 结果 描述 len([1, 2, 3]) 3 长度 [1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合 ['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复 3 in [1, 2, 3] True 元素是否存在于列表中 for x in [1, 2, 3]: print(x, end=" ") 1 2 3 迭代 访问列表中的值 list1 = ['Google','baidu', 1997,1999]; list2 = [1, 2, 3, 4, 5, 6, 7 ]; print ("list1[0]: ", list1[0]) print ("list2[1:5]: ", list2[1:5]) 更新列表 list1 = ['Google', 'baidu', 1997, 1999] #通过索引更新 list1[2] = 2001 #通过expend()方法增加元素,一次只能增加一个 list1.append("bing") #通过extend()方法增加,一次可以增加多个

Python学习心得(3)

浪子不回头ぞ 提交于 2020-02-08 05:58:21
Python学习心得(3) 1、循环语句 表示按某一特定的规律,将变量循环特定的次数。具体表示方法为for 变量 in range ([起始] , 终止 , [步长])其中,起始和步长可以省略,终止处选区取的数字将不能被循环取得,循环将在终止位的前一位停止。例如: #说一百遍“我能行!” for i in range (1,101): print("我能行!") 切记,在for循环中,格式相当重要,for语句的下一行需缩进四个空格的位置或tab键一下,表示层级关系。 2、嵌套循环 for循环的嵌套循环与单独的for 循环规则相同。例如: # 1. # 输出图型 # * # ** # ** * # ** ** # ** ** * # ** ** ** for i in range (6): for j in range (i+1): print("*",end="") print() 这便是两层for循环向嵌套而来的。 当然,循环不仅仅只有for循环,还有一个while循环,while循环的表达与for循环大致相通,只不过while后紧跟终止表达式,也就是说,当执行while循环时,while后面的表达式即为终止条件的表达式。 起始 while 终止表达式: 循环体 步长 例如: #输出从0到999998 i=0 while i<999999: print(i) i+=1 while

python list去重加set排序

岁酱吖の 提交于 2020-02-08 05:55:11
列表去重加排序 有很多种方法 mylist=[1,'233','w',24324,34,12,3,4] mylist2=[] for i in mylist: #循环遍历列表 if i not in mylist2: #判断 遍历到的数据是否在列表2中 mylist2.append(i) #如果不存在添加到新的列表2中 print(mylist2) 它只是去重 mylist=[5,6,4,1,'h','a','f','a',2,4,2,1] li =list(set(mylist)) #先转换成集合,自动去重,在转换成列表 print(li) mylist=[5,6,4,1,'h','a','f','a',2,4,2,1] li =list(set(mylist)) li.sort(key=mylist.index) print(li) mylist=[5,5,6,4,1,'h','a','f','a',2,4,2,1] mylist2=[] i =0 while i<len(mylist): print(mylist.index(mylist[i])) if mylist.index(mylist[i])==i: mylist2.append(mylist[i]) i +=1 print(mylist2 来源: https://www.cnblogs.com/lddragon/p

《利用python进行数据分析》——3.2函数——生成器——读书笔记

岁酱吖の 提交于 2020-02-08 01:07:32
1. 生成器定义 一边循环一边计算的机制,称为:生成器(generator) 生成器(generator)是构造新的可迭代对象的一种简单方式。 一般的函数执行之后只会返回单个值,而生成器则是以延迟的方式返回一个值序列, 即每返回一个值之后暂停,直到下一个值被请求时再继续。 生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器 2. 为什么要有生成器 python生成器的优点: (1)延迟计算,一次返回一个结果。生成器不会一次生成所有的结果,而是一边循环一边计算,这对于大数据量处理,是个非常有用的优势。因为在编程的实际应用中,占用内存量是工程师必须考虑的一个问题。 列表所有数据都在内存中,如果有海量数据的话将会非常耗内存。 如:仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。 如果列表元素按照某种算法推算出来,那我们就可以在循环的过程中不断推算出后续的元素,这样就不必创建完整的list,从而节省大量的空间。 简单一句话:我又想要得到庞大的数据,又想让它占用空间少,那就用生成器! (2)有效提高代码可读性。使用生成器以后,代码行数更少。 3.如何创建生成器 第一种方法很简单,只要把一个列表生成式的 [] 改成 () ,就创建了一个generator: In [189]: gen = (x ** 2 for x in range(100))

[Python日记-2]列表-元组-字典-if-for

北城以北 提交于 2020-02-08 00:13:29
今天学习了列表,元组,字典相关知识,真的琐碎。我应该是学了好几遍了,刚开始是充满激情的,学到一个方法就迫不及待地去尝试,现在也平和了。好了,总结下。 1. 列表 Python中用方括号([])来表示列表,并用逗号来分隔其中的元素。要访问列表元素,列表的名称[索引]。 索引可以是负值,如将索引指定为-1,可让Python返回最后一个列表元素。可以在不明确列表长度的情况下,访问最后的元素。 1.1 列表中添加元素的方法: 1 Lis = [] 2 3 Lis.title() #使列表中每个元素的首字母大写 4 5 Lis.append('apple') #将'apple'元素添加到列表末尾 6 7 Lis.insert(0,'apple') #在Lis列表的索引为0的位置,添加元素'apple' 其中,由于经常要等到程序运行后,才知道用户要在程序中储存哪些数据。为控制用户,可首先创建一个空列表,用于储存用户将要输入的值,然后将用户提供的每个新值附加到列表中(append)。 1.2 列表中删除元素的方法: Lis = [] del Lis[0] #删除Lis列表中某一索引的值 pop_imp = Lis.pop() #弹出列表最后一个元素的值,并由pop_imp储存 pop_imp = Lis.pop(0) #弹出列表第一个元素的值,并由pop_imp储存 Lis.append(

对Python新手编程过程中如何规避一些常见问题的建议

心不动则不痛 提交于 2020-02-07 17:42:17
这篇文章收集了我在Python新手开发者写的代码中所见到的不规范但偶尔又很微妙的问题。本文的目的是为了帮助那些新手开发者渡过写出丑陋的Python代码的阶段。为了照顾目标读者,本文做了一些简化(例如:在讨论迭代器的时候忽略了生成器和强大的迭代工具itertools)。 对于那些新手开发者,总有一些使用反模式的理由,我已经尝试在可能的地方给出了这些理由。但通常这些反模式会造成代码缺乏可读性、更容易出bug且不符合Python的代码风格。如果你想要寻找更多的相关介绍资料,我极力推荐The Python Tutorial或Dive into Python。 迭代 range的使用 Python编程新手喜欢使用range来实现简单的迭代,在迭代器的长度范围内来获取迭代器中的每一个元素: for i in range(len(alist)): print alist[i] 应该牢记:range并不是为了实现序列简单的迭代。相比那些用数字定义的for循环,虽然用range实现的for循环显得很自然,但是用在序列的迭代上却容易出bug,而且不如直接构造迭代器看上去清晰: for item in alist: print item range的滥用容易造成意外的大小差一(off-by-one)错误,这通常是由于编程新手忘记了range生成的对象包括range的第一个参数而不包括第二个

python --循环设计

淺唱寂寞╮ 提交于 2020-02-07 15:38:50
转自:http://www.cnblogs.com/vamei/archive/2012/07/09/2582435.html 在“循环”一节,我们已经讨论了Python基本的循环语法。这一节,我们将接触更加灵活的循环方式。 range() 在Python中,for循环后的in跟随一个序列的话,循环每次使用的序列元素,而不是序列的下标。 之前我们已经使用过range()来控制for循环。现在,我们继续开发range的功能,以实现下标对循环的控制: S = 'abcdefghijk' for i in range(0,len(S),2): print S[i] 在该例子中,我们利用len()函数和range()函数,用i作为S序列的下标来控制循环。在range函数中,分别定义上限,下限和每次循环的步长。这就和C语言中的for循环相类似了。 enumerate() 利用enumerate()函数,可以在每次循环中同时得到下标和元素: S = 'abcdefghijk' for (index,char) in enumerate(S): print index print char 实际上,enumerate()在每次循环中,返回的是一个包含两个元素的定值表(tuple),两个元素分别赋予index和char zip() 如果你多个等长的序列,然后想要每次循环时从各个序列分别取出一个元素

python基础之条件和循环

允我心安 提交于 2020-02-07 07:35:27
一.if语句 1.1 功能 计算机又被称作电脑,意指计算机可以像人脑一样,根据周围环境条件(即expession)的变化做出不同的反应(即执行代码) if语句就是来控制计算机实现这一功能 1.2 语法 1.2.1:单分支,单重条件判断 if expression: expr_true_suite 注释:expession为真执行代码expr_true_suite 1.2.2:单分支,多重条件判断 if not active or over_time >= 10: print('Warning:service is dead') warn_tag+=1 1.2.3:if+else if expression: expr_true_suite else: expr_false_suite 1.2.4:多分支if+elif+else if expession1: expr1_true_suite elif expression2: expr2_true_suite elif expession3: expr3_true_suite else: none_of_the_above_suite 1.2.5:if语句小结 if 后表达式返回值为True则执行其子代码块,然后此if语句到此终结,否则进入下一分支判断,直到满足其中一个分支,执行后终结if expression可以引入运算符:not

Python基本语法

ε祈祈猫儿з 提交于 2020-02-07 06:49:58
Python中的基本语法与常用方式 1 Python语言基础知识 1.1 输入与输出 1.1.1 数据的输入 1.1.2 数据的输出 1.2 标识符与变量 1.2.1 标识符 1.2.2 变量 1.2.3 赋值语句 1.3 数据类型及运算 1.3.1 数据类型 1.3.2 运算符和表达式 1.3.3 运算表达式 1.4 常见的Python函数 2 控制语句 2.1 分支结构控制语句 2.1.1 if语句 2.2.2 if/else语句 2.2.3 if/else/else语句 2.2.4 选择结构嵌套 2.3 循环结构控制语句 2.3.1 while循环 2.3.2 for语句 2.3.3 循环嵌套 2.3.4 break语句和continue语句 3 常用数据结构 3.1 序列 3.1.1 列表list 3.1.2 元组tuple 3.1.3 字符串 3.1.4 列表与元组之间的转换 3.2 字典 3.2.1 创建字典 3.2.2 字典方法 3.2.3 列表、元组与字典之间的转换 3.3 集合 3.3.1 集合的创建 3.3.2 集合的运算 3.3.3 集合的方法 4 函数的设计 4.1 函数的定义 4.2 函数的调用 4.3 形参与实参 4.4 函数的返回 4.5 位置参数 4.6 默认参数与关键参数 4.7 可变长度参数 4.8 序列作为参数 4.9 基于函数的抽象与求精 4

python之2.基础知识笔记

蓝咒 提交于 2020-02-07 02:03:35
1.字符串的格式化 在字符串中,可以将一个值插入到有格式化符号的地方 print ( "My name is %s and my age is %d" % ( "wiggin" , 30 ) ) 输出为 My name is wiggin and my age is 30 符号 作用 %c 格式化字符及其ASCII码 %s 格式化字符串 %d 格式化整数 %f 格式化浮点数字,可指定小数点后的精度 2.python运算符 2.1算数运算符 算数运算符 作用 % 求模 // 取整 ** n次幂 2.2.位运算符 位运算符 作用 | 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 ^ 按位异或运算符:当两对应的二进位相异时,结果为1 ~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 2.3.成员运算符与身份运算符 位运算符 作用 in 表示在xxx里面 not in 表示不在xxx范围内 is 是xxx is not 不是xxx a = '123' b = '12' print ( b in a ) True a = '123' b = '12' print ( b not in a ) False a = '123' b = '123' print ( b is a ) True a = '123' b = '123' print ( b is