一、字符串反转
a = "Python-learning"
a[::-1]
--> 'gninrael-nohtyP'
a = "Python-learning"
a = list(a) # 将字符串转换为list
a.reverse() # reverse()函数:对list的元素进行反向排序,没有返回值
a = ''.join(a) # 将反向排序的列表,转换为字符串
print(a)
--> 'gninrael-nohtyP'
二、矩阵转置
a = [[1,2,3], [7,8,9], [4, 5, 6,10,11]]
b = list(zip(*a)) # zip()函数:将可迭代对象对应的元素,打包成一个个元组,返回元组组成的列表对象。加上星(*)号,其作用刚好相反,即将元组解压为列表
print(b)
--> [(1, 7, 4), (2, 8, 5), (3, 9, 6)]
三、list元素转变量
a = [1,2,3]
a = x, y, z
print(x, y, z)
--> 1 2 3
四、变量交换值
a = 'python'
b = 'jupyter'
a, b = b, a
print(a, b)
--> jupyter python
五、list降维度(不使用for循环)
from itertools import chain
a = [[1, 2, 3], [7, 8], [4, 5]]
b = list(chain.from_iterable(a)) # chain()函数:可以接受多个可迭代对象为参数,返回一个新的迭代器。from_iterable()函数:接受一个参数,生成迭代序列
print(list(b))
--> [1, 2, 3, 7, 8, 4, 5]
六、优雅合并dict
a = {'name':'python', 'system':'mac'}
b = {'version':3.6, 'IDE':'Pycharm'}
c = dict(a, **b)
c
-- > {'IDE': 'Pycharm', 'name': 'python', 'system': 'mac', 'version': 3.6}