最近总结一下python基础知识,就暂时弃坑了。
本文总结只属于python的一些骚操作。。。
后面文章自行去博客学习交流
原地交换
Python 提供了一个直观的在一行代码中赋值与交换(变量值)的方法
x, y = 10, 20
print(x, y)x, y = y, x
print(x, y)#1 (10, 20)
#2 (20, 10)
原理:赋值的右侧形成了一个新的元组,左侧立即解析(unpack)那个(未被引用的)元组到变量 <a> 和 <b>。一旦赋值完成,新的元组变成了未被引用状态并且被标记为可被垃圾回收,最终也完成了变量的交换。
链状比较操作符
Python不用很多条件一个一个写,比较操作符可以聚合。
n = 10
result = 1 < n < 20
print(result)# Trueresult = 1 > n <= 9
print(result)# False
三元操作符进行条件赋值
三元操作符是 if-else 语句也就是条件操作符的一个快捷方式:[表达式为真的返回值] if [表达式] else [表达式为假的返回值]
这里给出一个你可以用来使代码紧凑简洁的例子。下面的语句是说“如果 y 是 9,给 x 赋值 10,不然赋值为 20”。
x = 10 if (y == 9) else 20
在列表推导中:
[m**2 if m > 10 else m**4 for m in range(50)]
判断最小值:
def small(a, b, c):return a if a <= b and a <= c else (b if b <= a and b <= c else c)
类中:
x = (classA if y == 1 else classB)(param1, param2)
多行字符串
a='''dvfssd
fsdfdsfsd
dsdsfbfdfasf
afasfaf'''
print(a)
In判断
可以直接用来判断某个变量是否在列表中
我们可以使用下面的方式来验证多个值:
if m in [1,3,5,7]:
而不是:
if m==1 or m==3 or m==5 or m==7:
六、 四种翻转字符串/列表的方式
# 翻转列表本身
testList = [1, 3, 5]
testList.reverse()
print(testList)
#-> [5, 3, 1]
# 在一个循环中翻转并迭代输出
for element in reversed([1,3,5]):
print(element)
#1-> 5
#2-> 3
#3-> 1
# 一行代码翻转字符串
"Test Python"[::-1]
输出 “nohtyP tseT”
# 使用切片翻转列表
[1, 3, 5][::-1]
#输出 [5,3,1]。