2019独角兽企业重金招聘Python工程师标准>>>

人生苦短,我选Python”。那么,你真的掌握了Python吗?

1. 交换变量

有时候,当我们要交换两个变量的值时,一种常规的方法是创建一个临时变量,然后用它来进行交换。比如:

# 输入

a = 5

b = 10

#创建临时变量

temp = a

a = b

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差不多。

转载于:https://my.oschina.net/u/3849396/blog/1929322

人生苦短:Python里的17个“超赞操作相关推荐

  1. python有趣小程序-Python里的17个quot;骚操作”好玩有趣

    1. 交换变量 有时候,当我们要交换两个变量的值时,一种常规的方法是创建一个临时变量,然后用它来进行交换.比如:# 输入 a = 5 b = 10 #创建临时变量 temp = a a = b b = ...

  2. 盘点一个小小明大佬开发的Python库,4个超赞功能

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 知命者不怨天,知己者不怨人. 大家 ...

  3. 超赞的贪吃蛇、吃豆人和数字华容道等童年小游戏1行Python代码就能玩

    今天分享一个有趣的Python游戏库freegames,它包含20余款经典小游戏,像贪吃蛇.吃豆人.乒乓.数字华容道等等,依托于标准库Turtle. 我们不仅可以通过1行代码进行重温这些童年小游戏,还 ...

  4. 超赞!贪吃蛇、吃豆人和数字华容道等童年小游戏1行Python代码就能玩

    大家好,我是才哥. 今天分享一个有趣的Python游戏库freegames,它包含20余款经典小游戏,像贪吃蛇.吃豆人.乒乓.数字华容道等等,依托于标准库Turtle. 我们不仅可以通过1行代码进行重 ...

  5. 安卓手机怎么设置蓝牙耳机弹窗动画_AirPods耳机也能在安卓手机与windows系统里,有超赞的体验,只需这两款软件...

    AirPods刚发布,就被吐槽是绿豌豆,网友调侃它是植物大战僵尸里豌豆也不是空穴来风.看这造型.不过很多网友在实际上手体验里,却发出真香警告,看来万物都无法离开真香定律啊.AirPods 的这种真香定 ...

  6. 超赞的PyTorch资源大列表,GitHub标星9k+,中文版也上线了

    点击阅读原文,快速报名! 作者 | 红色石头 来源 | AI有道(ID: redstonewill) 自 2017 年 1 月 PyTorch 推出以来,其热度持续上升.PyTorch 能在短时间内被 ...

  7. github总star超9K!一个超赞的 PyTorch 资源大列表,有人把它翻译成了中文版!

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 转自:程序员爱码士 自 2017 年 1 月 PyTorch 推出以来,其热度持续上升 ...

  8. 超赞的 PyTorch 资源大列表,有人把它翻译成了中文版!

    点击上方"AI有道",选择"星标"公众号 重磅干货,第一时间送达 自 2017 年 1 月 PyTorch 推出以来,其热度持续上升.PyTorch 能在短时间 ...

  9. 分享29个超赞的响应式Web设计

    原文自:http://www.csdn.net/article/2013-01-16/2813678-responsive-design-websites 最近几年,响应式Web设计不断印入人们眼帘, ...

最新文章

  1. 各种AI模型拿来就能用!五大深度学习模型库大盘点
  2. python 读取文件读出来是什么格式-深入学习python解析并读取PDF文件内容的方法...
  3. HP NIC Teaming技术探讨
  4. 动态规划之最长公共子串
  5. 【ArcGIS风暴】在ArcGIS中实现将一个圆16等分
  6. excel单元格斜线_掌握这20个Excel技巧,小白轻松变大神
  7. vb microsoft.xmlhttp 获取所有超链接_编写我的第一个VB程序
  8. gcc及doxygen的安装过程
  9. 简单的控制台五子小游戏棋程序(Java)
  10. 关于Element UI中页面样式小问题
  11. auto.js停止所有线程_使用多线程处理输入的数据
  12. Launcher3无图标问题
  13. internet缓存Temp中的tmp文件
  14. gbdt 和random forest 效果非常好的思考!
  15. Proteus仿真:流水灯
  16. 如何用PS的量度标尺工具调整图片
  17. 光纤猫连接路由器_CodingPark编程公园
  18. 电脑上的文件经常丢失,怎么办?
  19. java 中session能存什么不能存什么
  20. linux快捷键锁定屏幕,天天Linux-Ctrl+S快捷键锁定屏幕的问题

热门文章

  1. 全球及中国车载扫地机行业销售前景态势与运营盈利分析报告2022版
  2. 全球及中国昆虫类宠物食品行业竞争潜力与盈利价值分析报告2022版
  3. 中国新型储能市场技术进展与投资经营模式建议分析报告2022-2028年版
  4. CEF:给客户端内嵌一个Chrome吧
  5. ABAP OO的八大理由(四)
  6. 2019 Multi-University Training Contest 1 - 1004 - Vacation - 二分 - 思维
  7. (转)mybatis一级缓存二级缓存
  8. maven配置环境变量失败解决办法
  9. 蓝桥杯java 算法训练 区间K大数查询
  10. redis 持久化之 rdb 快照持久化