Pythonのエレガントな略語は必要性を知っている必要があり、更新を続けます(9.10)...

  1. 複数のPythonピア割り当て
a, b = 0, 1   # 相当于 a=0, b=1 

# 亦或者某些返回两个值的拆分
a, b = (0, 1)
# 只取第一个   _ 为不需要的占位符
a, _ = (0, 1)
  1. 相互割り当て
a, b = b, a		# 使a,b的值交换
  1. 短絡の割り当て
# bb为真则将bb赋值给a,为假则将cc赋值给a
a = bb or cc 
  1. 三元演算子
# 赋值,条件成立则赋值value,不成立则赋值value2
a = value if condition(条件:类型为bool) else value2	
# 执行操作
print(1) if condition else print(2)	
  1. リストの生成
# 万恶之源
list1 = [i for i in range(10)]
# 相当于
list1 = []
for i in range(10):
    list1.append(i)

# 使用列表生成式中还可以对 i 进行操作
list1 = [str(i) for i in range(10)]
list1 = [i+10 for i in range(10)]

# 遍历一个列表,对每一个遍历值操作
list1 = ['aiwdnn', 'ibhjka', 'akjwb']

list2 = [i.upper() for i in list1]			# 使每一次值大写
list3 = [random.choice(i) for i in list1] 	# 每次随机选取字符串中的一个字符

# 两层循环
[(i,j) for i in range(3) for j in range(3)]
# 相当于
for i in range(3):
    for j in range(3):
    	... ... 

# 加点判断
[i for i in range(11) if i%2 != 0]			# 输出10以内的单数
  1. リスト生成バリアント
# 得到一个生成器对象
>>>(i for i in range(10))
<generator object <genexpr> at 0x006F9990>
  1. Crazed.join()
# 将列表元素按照''分隔,合成一个字符串
>>>''.join(['a', 'b', 'c'])
'abc'
# 以'\n'分隔
>>> 'a\nb\nc'


# 利用这一机制 生成验证码

# 先返回一下 a-z
>>> ''.join([chr(s) for s in range(97, 123)])
'abcdefghijklmnopqrstuvwxyz'
# 随机选它1个字母
''.join(random.choice([chr(s) for s in range(97, 123)]))
# 随机选它4个字母.    _ 代表一个不重要的匿名占位符
''.join([random.choice([chr(s) for s in range(97, 123)]) for _ in range(4)])
# 加上数字,随机它6个
>>>''.join([random.choice([chr(i) for i in range(97, 123)]+[chr(x) for x in range(49, 58)]) for _ in range(6)])
  1. *および**簡単な開梱
def test(a, b, c):
	pass
# 1 解元组
tuple1 = (0, 1, 2)
test(*tuple1)
# 相当于
test(a=0, b=1, c=2)

# 2 解字典
dict1 = {
    
    "a": 0, "b": 1, "c": '2'}
test(**dict1)
# 相当于
test(a=0, b=1, c=2)
  1. レンジリバース
# 打印 1-10
for i in range(1, 11):
	print(i)
# 打印 10 - 1
for i in range(10, 0, -1):
	print(i)
# 打印1-10-1 的数字
for i in list(range(10)) + list(range(10, -1, -1)):
    print(i, end=' ')


…継続的な更新では、少し考えて少し書いてください

おすすめ

転載: blog.csdn.net/qq_39177678/article/details/108229686