python 中if-else的多种简洁的写法】的更多相关文章

因写多了判断语句,看着短短的代码却占据来好几行,于是便搜下if-else简洁的写法,结果也是发现新大陆 4种: 第1种:__就是普通写法 a, b, c = 1, 2, 3 if a>b: c = a else: c = b 第二种:一行表达式,为真时放if前 c = a if a>b else b 第三种:二维列表,利用大小判断的0,1当作索引 c= [b, a][a > b] 第四种:传说中的黑客,利用逻辑运算符进行操作,都是最简单的东西,却发挥无限能量啊 c = (a>b a…
打印index 对于一个列表,或者说一个序列我们经常需要打印它的index,一般传统的做法或者说比较low的写法: 更优雅的写法是多用enumerate 两个序列的循环 我们会经常对两个序列进行计算或者处理,比较low的方法是用下标去循环处理 更优雅一点的方法:用zip轻松搞定 有没有更优雅的方法呢,比如如果两个序列有10000的长度,当然有的用izip 当然izip还是Py2.x时代的产物,现在Py3.6里面默认zip都是izip了! 交换变量 多个变量之间的交换,相信很多有c,c++语言基础…
dict={} dict['key']='value dict={'key':"value","key2":"value2"} dict=dict(key=value,key2=value)…
当重新学习了计算机基础课程<数据结构和算法分析>后再来看这篇自己以前写的博文,发现错误百出.python内置数据类型之所以会有这些特性,归根结底是它采用的是传递内存地址的方式,而不是传递真实值的方式.list使用的是动态顺序存储方式,每一个下标位置存储的是实际值的内存地址,而不是值的本体. 大家都知道,在python中复制一个对象有多种方法,其中常用的是赋值.浅拷贝和深拷贝,这三者之间有哪些区别和哪些坑呢? 首先,定义一下: 赋值:  a =1    b =a    a赋值给了b 浅拷贝: a…
https://www.cnblogs.com/LetMe/p/6724555.html 在理解浅拷贝和深拷贝之前,首先要理解学习一下变量在Python中是怎样存储的: 变量的类型是分值引用与地址引用两种. python的一切变量都是对象,变量的存储,采用了地址引用的方式,存储的只是一个变量的值所在的内存地址,而不是这个变量的只本身. 在Python中,是有多种数据类型:bool.int.long.float.string.list.dict.tuple.set; 其中可分为基本数据类型和复杂数…
列表[‘hello’ , ‘python’ ,’!’ ] 用多种方法拼接,并输出’hello python !’ 使用字符串链接的四种方法都可以创建 字符串拼接一共有四种方法,也可以应用到列表的拼接中 a = [‘hello’,‘python’,’!’] 第一种是用类似字符串相加的方法 #a[0] + ’ ’ + a[1] + ’ ’ + a[2] 第二种是用%s 连接起来 #’%s %s %s’%(a[0],a[1],a[2]) 第三种是用 join 连接起来 ‘’'这里先普及join()在p…
a, b= 1, 2 将a和b两个变量中的最大值赋值给c (1)常规写法 if a>b:     c = a else:     c = b   (2)表达式 c = a if a>b else b   (3)二维列表 c = [b,a][a>b]   (4)逻辑赋值 c = (a>b and [a] or [b])[0]   分析: 1.2为程序的基本语法不讨论 3:首先a>b的取值为True或False,而在python中True的默认值为1False的默认值为0. 可得…
作为一名新手Python程序员,你首先需要学习的内容之一就是如何导入模块或包.但是我注意到,那些许多年来不时使用Python的人并不是都知道Python的导入机制其实非常灵活.在本文中,我们将探讨以下话题: 常规导入(regular imports) 使用from语句导入 相对导入(relative imports) 可选导入(optional imports) 本地导入(local imports) 导入注意事项 1.常规导入 常规导入应该是最常使用的导入方式,大概是这样的: import s…
生成器就是一个在行为上和迭代器非常类似的对象.   是个对象! 迭代,顾名思意就是不停的代换的意思,迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果.每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值. 迭代器就是用于迭代操作(for 循环)的对象.它像列表一样可以迭代获取其中的每一个元素,任何实现了 __next__ 方法(python2 是 next)的对象都可以称为迭代器. 它与列表的区别在于,构建迭代器的时候,不像列表把所有元素一次性加载到内存…
在Python中,虽然定义一个函数只需要def关键字,但是他能实现多种功能和用途,比如今天我们讲解的这几种方式.如何使用函数实现一个计算器的功能呢?当然,实现计算器的方式有很多种,我们举几个比较典型的例子,借助函数来实现就比较容易.我们使用三种方式实现加法计算器的应用: 1.IF嵌套语句  2.def函数实现  3.面向对象的实现方式 先来看第一种:(通过if嵌套语句实现一个计算器功能,我一直觉得这种写法写起来是比较简洁,规范,明朗的)首先,先使用函数定义加.减.乘.除这四种计算方法. def…