python for循环

python基础-特性

让人想犯罪 __ 提交于 2020-02-12 12:54:59
导航:   高阶特性:      切片: Python没有针对字符串的截取函数,只需要切片一个操作就可以完成      迭代: Python的 for 循环抽象程度要高于Java的 for 循环,因为Python的 for 循环不仅可以用在list或tuple上,还可以作用在其他可迭代对象上      列表生成器: 即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式      生成器: Generator ,一系列算法,使用时才计算值,一般采用for遍历.关键字 yield   高阶函数:        map: map() 函数接收两个参数,一个是函数,一个是序列, map 将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。      reduce: reduce() 函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算。      filter: filter() 也接收一个函数和一个序列。和 map() 不同的时, filter() 把传入的函数依次作用于每个元素,然后根据返回值是 True 还是 False 决定保留还是丢弃该元素。      sorted: Python内置的 sorted() 函数就可以对list进行排序.      返回函数 :函数作为返回值,闭包     

[Python]获取字典所有值

隐身守侯 提交于 2020-02-12 11:36:21
方法一:Key Value 直接获取 databases = {1: 'Student', 2: 'School'} for k,v in databases.items(): print(k,v) 1 Student 2 School 方法二:通过循环Key获取Value databases = {1: 'Student', 2: 'School'} for k in databases: print(k,databases[k]) 来源: https://www.cnblogs.com/leoshi/p/12298142.html

python iter,迭代器&dict,字典详解

不打扰是莪最后的温柔 提交于 2020-02-12 11:25:00
可以直接作用于for循环的对象统称为可迭代对象(Iterable)。 可以被next()函数调用并不断返回下一个值的对象称为迭代器(Iterator)。 所有的Iterable均可以通过内置函数iter()来转变为Iterator。 迭代器为类序列对象提供了一个类序列的接口。python的迭代无缝地支持序列对象,而且它还允许程序员迭代非序列类型,包括用户定义的对象。迭代器用起来很灵巧,你可以迭代不是序列但表现处序列行为的对象,例如字典的键、一个文件的行,等等。迭代器的作用如下: >>> i=iter('abcd') >>> print i.next() a >>> print i.next() b >>>print i.next() c    s = {'one':1,'two':2,'three':3} print s {'three': 3, 'two': 2, 'one': 1} >>> m = iter(s) >>> print m.next() three >>> print m.next() two >>> print m.next() one dict {'key':value,'key':value} 查询可以用get方法 ,也可以直接通过key查询,不过这样如果不存在这个key将会报错,而get会给出None  可以直接添加或者更改dict,dict('key')

Python基础知识练习题(二)

老子叫甜甜 提交于 2020-02-12 10:39:11
1、 有两个列表 l1 = [11,22,33] l2 = [22,33,44]a. 获取内容相同的元素列表 for i in l1: if i in l2: print(i) D:\PyProject\day13_homework\venv\Scripts\python.exe D:/PyProject/day13_homework/text.py 22 33 b. 获取 l1 中有,l2 中没有的元素列表 for i in l1: if i not in l2: print(i) D:\PyProject\day13_homework\venv\Scripts\python.exe D:/PyProject/day13_homework/text.py 11 c. 获取 l2 中有, l1 中没有的元素列表 for i in l2: if i not in l1: print(i) D:\PyProject\day13_homework\venv\Scripts\python.exe D:/PyProject/day13_homework/text.py 44 d. 获取 l1 和 l2 中内容都不同的元素 for i in l1: if i not in l2: print(i) for i in l2: if i not in l1: print(i) D:

Python 文件读取

百般思念 提交于 2020-02-12 01:07:15
1. 最基本的读文件方法: # File: readline-example-1.py file = open("sample.txt") while 1: line = file.readline() if not line: break pass # do something   一行一行得从文件读数据,显然比较慢;不过很省内存。   在我的机器上读10M的sample.txt文件,每秒大约读32000行 2. 用fileinput模块 # File: readline-example-2.py import fileinput for line in fileinput.input("sample.txt"): pass   简单一些,不过测试以后发现每秒只能读13000行数据,效率比上一种方法慢了两倍多…… 3. 带缓存的文件读取 # File: readline-example-3.py file = open("sample.txt") while 1: lines = file.readlines(100000) if not lines: break for line in lines: pass # do something   这个方法真的更好吗?事实证明,用同样的数据测试,它每秒可以读96900行数据!效率是第一种方法的3倍,第二种方法的7倍! ———————

Python逐行读取文件内容

流过昼夜 提交于 2020-02-12 01:05:35
1. 读取文本文件 代码: [python] view plain copy f = open( 'test.txt', 'r') print f.read() f.seek( 0) print f.read( 14) f.seek( 0) print f.readline() print f.readline() f.seek( 0) print f.readlines() f.seek( 0) for line in f: print line, f.close() 运行结果: root@he-desktop:~/python/example# python read_txt.py 第一行 第二行 第三行 第一行 第 第一行 第二行 ['\xe7\xac\xac\xe4\xb8\x80\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xba\x8c\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xb8\x89\xe8\xa1\x8c\n'] 第一行 第二行 第三行 open的第二个参数: r,读取模式 w,写入模式 a,追加模式 r+,读写模式 read()表示读取到文件尾,size表示读取大小。 seek(0)表示跳到文件开始位置。 readline()逐行读取文本文件。 readlines()读取所有行到列表中

python编程基础

北城以北 提交于 2020-02-11 17:09:47
if判断语句 if expression : #没有括号 statement; elif expression : statement; else: statement; for循环语句 for i in range(1,10,2): statement while循环 while expression: statement; 函数 def function-name(parameters): statement; 列表 赋值 spam=['a',2,'cat'] spam=[[1,2,3],['cat','dog']] 取值 spam[1] spam[1][0] #对于列表包含列表的 修改列表的值 spam[1] = 3 删除列表中的元素 del spam[1]#删除元素之后,被删除值后面的所有值,都将向前移 动一个下标 使用列表 列表用于循环 for i in range(len(spam)): print(spam[i]); 常见函数 len(spam) 求列表的长度 spam.index(‘value’) 返回该值的下标,如果该值不在列表中,就报ValueError,如果有多个重复的值,返回第一个值的下标 spam.append(value) 将值添加到末尾 spam.insert(index,value)可以在列表任意位置进行添加 spam.remove(value)

Python循环 if else、while、for

心不动则不痛 提交于 2020-02-11 12:54:44
1、判断用户输入的用户名、密码和设置的是否一致 import getpass _username = "wangsong" _password = "123456" username = input("username:") password = getpass.getpass("password") if _username == username and _password == password:   print("Welcome user {name} login....".format(name=username)) else:   print("Invalid username or password") 2、使用while和if循环,猜年龄,最多允许猜3次,3次内猜对了直接跳出循环,输错三次则报错。 #!/usr/bin/env python3.4 count = 0 while True: if count == 3: break age_of_wangsong = 25 guess_age = int(input("Please guess age: ")) if guess_age == age_of_wangsong: print("You guess successfuly...") elif guess_age < age_of_wangsong:

Python学习笔记-循环语句

折月煮酒 提交于 2020-02-11 11:56:59
循环语句 while循环 无限循环 while ... else 语句 for循环 range()函数 break 和 continue 语句及循环中的 else 子句 pass 语句 笔记是本人学习时为方便以后复习所作,原教程链接 Python3 教程 | 菜鸟教程 while循环 while 判断条件(condition): 执行语句(statements)…… # 计算1到100的和 n = 1 sum = 0 while n <= 100 : sum += n n = n + 1 print ( sum ) 运行结果 5050 无限循环 设置结果为True的条件实现无限循环 while True : i = input ( '请输入一个数:' ) print ( '你输入的数是%s' % ( i ) ) 运行结果 请输入一个数:2.3 你输入的数是2.3 请输入一个数:25 你输入的数是25 请输入一个数: while … else 语句 while 条件: 语句1 else: 语句2 num = 0 while num < 5 : print ( '%d < 5' % ( num ) ) num += 1 else : print ( '%d >= 5' % ( num ) ) 运行结果 0 < 5 1 < 5 2 < 5 3 < 5 4 < 5 5 >= 5

python编程基础

此生再无相见时 提交于 2020-02-11 00:31:04
if判断语句 if expression : #没有括号 statement; elif expression : statement; else: statement; for循环语句 for i in range(1,10,2): statement while循环 while expression: statement; 函数 def function-name(parameters): statement; 列表 赋值 spam=['a',2,'cat'] spam=[[1,2,3],['cat','dog']] 取值 spam[1] spam[1][0] #对于列表包含列表的 修改列表的值 spam[1] = 3 删除列表中的元素 del spam[1]#删除元素之后,被删除值后面的所有值,都将向前移 动一个下标 使用列表 列表用于循环 for i in range(len(spam)): print(spam[i]); 常见函数 len(spam) 求列表的长度 spam.index(‘value’) 返回该值的下标,如果该值不在列表中,就报ValueError,如果有多个重复的值,返回第一个值的下标 spam.append(value) 将值添加到末尾 spam.insert(index,value)可以在列表任意位置进行添加 spam.remove(value)