Python 列表推导式 if else for in join with as
2017-03-21 14:32
1096 查看
c = a if a>b else b //如果a>b返回a,否则返回b >>> a = 1 >>> b = 2 >>> c = a if a>b else b >>> c 2
c = [b,a][a>b] //如果a>b返回a,否则返回b >>> a = 1 >>> b = 2 >>> c = [b,a][a>b] >>> c 2
c = [ i for i in a if i%2==0 ] //遍历a,在i为偶数时返回 >>> a = [1,2,3] >>> c = [i for i in a if i%2==0] >>> c [2] 注意当你用上述方式生成列表,但又不引用而只是作为临时参数时,为减少内存开销,应将sum( [ i for i in a if i%2==0 ] )改成sum( i for i in a if i%2==0 ),
生成集合:c = { i for i in a if i%2==0 } //遍历a,在i为偶数时返回 生成字典:c = { i:i**i for i in a if i%2==0 } //遍历a,在i为偶数时返回
c = [i+j for i in a for j in b if i%2==0 and j%2==0] //同时嵌套遍历列表a和b,返回i和j同时为偶数时的和。其中for in a属于外层嵌套,for in b属于内层 >>> a = [1,2,3] >>> b = [4,5,6] >>> c = [i+j for i in a for j in b if i%2==0 and j%2==0] >>> c [6, 8]
c = [i if i%2==0 else 1 for i in a] //遍历a,如果i为偶数直接返回,否则直接返回1。此处if写在for前面要求必须有else项 >>> a = [1,2,3] >>> c = [i if i%2==0 else 1 for i in a] >>> c [1, 2, 1]
a,b=b,a //交换数据 >>> a=1 >>> b=2 >>> a,b=b,a >>> a 2 >>> b 1
''.join['1','2'] //字符list的连接 >>> c = ''.join(['1','2']) >>> c '12'
class Sample: def __enter__(self): return self def __exit__(self, type, value, trace): print "type:", type print "value:", value print "trace:", trace def do_something(self): bar = 1/0 return bar + 10 #1、类Sample被实例化后,调用__enter__()方法,将返回值赋给as后的变量sample #2、with语句下的语句sample.do_something()被执行 #3、语句执行完或者是出现异常时调用__exit__()方法 with Sample() as sample: sample.do_something()
相关文章推荐
- python里面的几个用法,not in,c if a else b,[fun(a) for a in [...]] , a,b=b,a,'内容'.join([string array])
- Python入门 列表 for while if...else... 函数
- Python(5)使用for...in循环和列表推导式打印一个99乘法表
- python之列表推导式:c for b in a的代码形式理解
- python列表推导式中使用if-else
- python列表推导式中使用if-else
- Python-for与列表推导式
- Python_3_学习之路_(1)变量_用户交互_if_else___while__for
- Javascript:基本语句(if-else/switch/for/while/for-in/try-catch)
- As Serial ATA Arrays Become Popular for ILM, Industry Heavyweights Join In @ JDJ
- Starting up PySpark for using python with Spark in eclipse
- A for loop javascript event dynamically binding with customized data as paramete passed in test
- Alternative solution for using IF condition with Eval in C# Repeater
- Python列表解析配合if else
- react with JSX for {if…else…}
- Python基础(条件判断和循环) if elif else for while break continue;
- Python if for else elif while break loop pass 控制流工具
- Program for Android in C/C++ with the Native Development Kit (if you dare)
- You have two integer arrays. Treat these arrays as if they were big numbers, with one digit in each
- python 基本语法 if else for