让你相见恨晚的十个Python骚操作


Posted in Python onNovember 18, 2020

前言

众所周知,Python 以语法简洁著称,同样实现一个功能,Java 可能要十来行,Python 一行就可以搞定。

Python 的代码之所以这么优雅,完全归功于其独有的特性,只要你掌握了这些特性,同样可以写出像诗一样的代码。

下面我们就一起看看 Python 中的骚操作。

0x00 Hello World

对于大部分程序员来说,第一个程序应该都是 "Hello World!" 了,Python 直接将该入门程序做成了一个包。

In [1]: import __hello__
Hello world!

0x01 交换变量

一行代码搞定变量交换,无需临时变量,也无需异或操作。

In [1]: x,y = y,x

0x02 变量比较

对于变量的连续比较,Python 是支持的比较好的。

In [24]: x = 10

In [25]: 5 < x < 20
Out[25]: True

In [26]: 11 < x < 20
Out[26]: False

0x03 列表推导式

In [2]: list = list(range(10))
# 取偶数
In [3]: even = [x for x in list if x % 2 == 0]

In [4]: even
Out[4]: [0, 2, 4, 6, 8]

0x04 合并字符串

很多语言合并字符串大都是通过 + 号来实现的,但由于字符串的不可变性,不断合并后的字符串会不断的申请新的内存。

In [5]: x = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

In [6]: ''.join(x)
Out[6]: 'abcdefg'

0x05 列表切片

In [2]: x
Out[2]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 取索引为 2 到 8 的值,步长为 2
In [4]: x[2:8:2]
Out[4]: [2, 4, 6]

# 步长为负值,表示从后面取值
In [6]: x[::-2]
Out[6]: [9, 7, 5, 3, 1]

0x06 反转字符串

In [7]: x = 'Hello Python!'

In [8]: x[::-1]
Out[8]: '!nohtyP olleH'

0x07 同时获取下标和值

x = list(range(10))
for index, value in enumerate(x):
 print(index, value)

0x08 zip()函数

In [7]: a = [1,2,3]

In [8]: b = [4,5,6]

In [9]: c = [7,8,9]

In [16]: list(zip(a, b, c))
Out[16]: [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

# 逆操作
In [18]: zz = (zip(a, b, c))

In [19]: x, y, z = zip(*zz)

In [20]: x,y,z
Out[20]: ((1, 2, 3), (4, 5, 6), (7, 8, 9))

# 合并列表相邻项
In [22]: a = [1, 2, 3, 4, 5, 6]

In [23]: list(zip(a[::2], a[1::2]))
Out[23]: [(1, 2), (3, 4), (5, 6)]

0x09 闭包

def outer(x):
 def inner(y):
  # 在内函数中 用到了外函数的变量
  nonlocal x
  x += y
  return x + y

 # 外函数的返回值是内函数的引用
 return inner

fun = outer(10)

print(fun(10)) # 30
print(fun(10)) # 40
print(fun(10)) # 50

总结

今天我们学习了一些 Python 的技巧,都是大家平时工作必须掌握的技能。大家学会了么。

到此这篇关于让你相见恨晚的十个Python骚操作的文章就介绍到这了,更多相关十个Python骚操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python模拟登录12306的方法
Dec 30 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
Python中遇到的小问题及解决方法汇总
Jan 11 Python
Golang与python线程详解及简单实例
Apr 27 Python
python利用paramiko连接远程服务器执行命令的方法
Oct 16 Python
pandas.DataFrame选取/排除特定行的方法
Jul 03 Python
使用Flask集成bootstrap的方法
Jul 24 Python
python 字典操作提取key,value的方法
Jun 26 Python
python实现图片插入文字
Nov 26 Python
Python lxml模块的基本使用方法分析
Dec 21 Python
使用 Python 处理3万多条数据只要几秒钟
Jan 19 Python
python在package下继续嵌套一个package
Apr 14 Python
python搜索算法原理及实例讲解
Nov 18 #Python
python的数学算法函数及公式用法
Nov 18 #Python
python3中TQDM库安装及使用详解
Nov 18 #Python
Python3中FuzzyWuzzy库实例用法
Nov 18 #Python
scrapy redis配置文件setting参数详解
Nov 18 #Python
Scrapy-Redis之RedisSpider与RedisCrawlSpider详解
Nov 18 #Python
详解Scrapy Redis入门实战
Nov 18 #Python
You might like
php 模拟get_headers函数的代码示例
2013/04/27 PHP
php去除html标记的原生函数详解
2015/01/27 PHP
php+redis在实际项目中HTTP 500: Internal Server Error故障排除
2017/02/05 PHP
PHP如何根据文件头检测文件类型实例代码
2018/10/14 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
设为首页和收藏的Javascript代码(亲测兼容IE,Firefox,chrome等浏览器)
2013/11/18 Javascript
js post提交调用方法
2014/02/12 Javascript
javascript中style.left和offsetLeft的用法说明
2014/03/07 Javascript
JS和JQ的event对象区别分析
2014/11/24 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
Vue基于NUXT的SSR详解
2017/10/24 Javascript
Bootstrap table使用方法汇总
2017/11/17 Javascript
javaScript字符串工具类StringUtils详解
2017/12/08 Javascript
vue2.0 中使用transition实现动画效果使用心得
2018/08/13 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
2019/05/10 Javascript
vue中datepicker的使用教程实例代码详解
2019/07/08 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
Python3学习urllib的使用方法示例
2017/11/29 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
2020/02/28 Python
Python实现图片查找轮廓、多边形拟合、最小外接矩形代码
2020/07/14 Python
Python通过zookeeper实现分布式服务代码解析
2020/07/22 Python
德国汉莎航空中国官网: Lufthansa中国
2017/03/30 全球购物
美国社交购物市场:MassGenie
2019/02/18 全球购物
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
Java中采用什么结构来捕获、处理异常?各子句的顺序、功能如何
2013/10/07 面试题
有模特经验的简历自我评价
2013/09/19 职场文书
大学生思想汇报范文
2013/12/31 职场文书
乡镇食品安全责任书
2014/07/28 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
婚礼上证婚人致辞
2015/07/28 职场文书
超市主管竞聘书
2015/09/15 职场文书