人生苦短,我选Python”。那么,你真的掌握了Python吗?java
1. 交换变量python
有时候,当咱们要交换两个变量的值时,一种常规的方法是建立一个临时变量,而后用它来进行交换。好比:数组
# 输入函数
a = 5学习
b = 103d
#建立临时变量视频
temp = a对象
a = bblog
b = temp排序
print(a)
print(b)
但在Python中,其实咱们有一种更简洁的写法:
2. 将list中的全部元素转为单个字符串
列表和字符串是Python中最多见的数据类型,它们会遇到互相转换的须要。那么,咱们该怎么把list中的全部元素转为字符串呢?
3. 查找list中出现次数最多的元素
给定一个包含多个元素的list,让你查找其中出现次数最多的元素,你会怎么作?在下图中,咱们介绍了两种方法,其中第一种是利用max()函数的key参数,第二种则是使用Counter。
4. 判断两个字符串是不是anagram
所谓anagram,就是两个词所用的字母及其个数都是同样的,可是它们字母的位置不同,好比abc,bac,acb。在Python中,Counter能够解决这个问题,
5. 字符串倒转
字符串倒转,就是把1234转成4321。下面咱们介绍了三种方法:
方法一:最简单的切片法,a[::-1]就至关于a[尾:头:-1]。
方法二:用Python自带reversed()函数,它可被用于list倒转。
方法三:第三种是经过倒转数据类型和切片倒转整数。
若是你在学习Python的过程当中碰见了不少疑问和难题,能够加-q-u-n 227 -435-450里面有软件视频资料免费
6. list倒转
和字符串倒转相似,切片法也能够被用于list倒转,以下面的第一种方法。第二种方法调用的是上面提到的reversed()函数。
7. 二维矩阵转置
若是要转置矩阵,能够直接使用使用zip()函数。除此以外,没有比import numpy更简单的方法了。
8. 链式比较
若是想输出数组中介于4-7之间的元素,java是这么写的:if( b > 4 && b < 7){ },但Python更人性化。包括最后一句1 == b < 20,这和C、java也很不同。
9. 链式调用
在python中实现链式调用只需在函数返回对象本身就好了。
10. 复制list
若是是刚学习Python的C用户,你可能会想写b = a,但这是错的。在Python中,变量指向的是某个对象的标签。也就是说,按照这种的写法,b和a指向的是内存中的同一个列表,对b操做,就至关于对a操做。因此正确的写法有如下几种:
方法一:b=a[:]。
方法二:b=list(a)。
方法三:使用Python 3的copy()函数,直接复制list,相似a[:]。
方法四:使用copy.deepcopy()。
11. 判断一个key是否在字典中
若是目标key不在字典中,如下代码会返回None或default。
12. 按value排序字典
Python的内置字典数据类型是无序的,而key能够被用来获取对应的value。有时咱们须要根据value对字典中的item进行排序输出。方法以下所示:
方法一:用sorted函数排序,其中key参数是lamda表达式。
方法二:用operator.itemgetter而不是lamda表达式进行排序。
方法三:若是只需获得排序后的key,可用.get。
13. for ... else语法
14. 用逗号分隔list
下面分别是字符串list、数字list和混合list的逗号分隔方式。
15. 合并字典
方法一:Python 3.5能够存在重复key值,print({**d1, **d2})。
方法二:在内存中建立两个列表,再建立第三个列表,拷贝完成后,建立新的dict,删除掉前三个列表。
方法三:d1.update()。
16. list中的最小和最大索引
17. 从list中删除重复项
方法一:把list转成set,去除重复项,再转回list。
方法二:调用collections里的OrderedDict,和set差很少。