12个Python技巧你Get了吗?

开发 后端
如果读者对基本的 Python语法已经有一些了解,那么这篇文章可能会给你一些启发。

如果读者对基本的 Python语法已经有一些了解,那么这篇文章可能会给你一些启发。不啰嗦,直接上干货,以下内容绝对可以帮到你哟~

1. 列表理解

列表理解可以代替丑陋的for循环来填充列表。列表理解的基本语法为:

  1. expression for item in list if conditional 

一个非常简单的示例,用数字序列填充列表:

  1. i for i in range(10) 

因为可以使用表达式,所以还可以进行一些数学运算或调用外部函数。

最后,你可以使用if筛选列表。在这种情况下,我们仅保留可被2整除的值:

  1. i for i in range(10) if i%2==0 

2. 检查对象的内存使用情况

使用sys.getsizeof(),你可以检查对象的内存使用情况。

3. 返回多个值

Python中的函数可以返回多个变量,而无需字典,列表或类。

对于有限数量的返回值,这是可以的。但是超过3个值的任何内容都应放入类中。

4. 使用data类

与常规类或其他替代方法(如返回多个值或字典)相比,它具有多个优点:

  • 数据类需要最少的代码
  • 你可以比较data类,因为它__eq__已为您实现
  • 你也可以轻松打印数据类以进行调试,因为它__repr__也已实现
  • data类需要类型提示,从而减少了发生错误的机会

5. 就地变量交换

一项巧妙的小技巧,可以节省几行代码。

  1. a,bb = b,a 

6. 合并字典(Python 3.5+)

从Python 3.5开始,合并字典变得更加容易:

如果键(key)重叠,则第一个词典中的键(key)将被覆盖。

7. 首字母大小写

使用capitalize()函数将字符串的首字母转为大写,其余变为小写。

  1. "welcome".capitalize() 

8. 将字符串拆分为列表

你可以将字符串拆分为字符串列表。在这种情况下,我们分割空格字符:

  1. list("welcome") 

9. 快速创建Web服务器

你可以快速启动Web服务器,以提供当前目录的内容:

  1. python3 -m http.server 

如果你想与同事共享一些东西或想要测试一个简单的HTML网站,这将很有用。

10. 多行字符串

尽管可以在代码中使用三引号将多行字符串包括在内,但这并不理想。放在三引号之间的所有内容都将成为字符串,包括格式,如下所示。我更喜欢第二种方法,该方法将多行连接在一起,可以很好地格式化代码。唯一的缺点是你需要显式添加换行符。

11. 比较运算符的链接

您可以在Python中链接比较运算符,以创建更易读和简洁的代码:

12. 处理日期

python-dateutil模块提供了对标准datetime模块的强大扩展。通过以下方式安装:

  1. pip3 install python-dateutil 

你可以用这个库做很多很酷的事情。我将把示例限制在我认为特别有用的一个:日志文件中日期的模糊解析等。

只需记住:常规的Python日期时间功能在哪里结束,python-dateutil就出现了!

 

责任编辑:赵宁宁 来源: 今日头条
相关推荐

2019-10-23 08:39:58

程序员互联网技术

2009-10-27 09:09:06

Eclipse技巧

2018-05-18 16:36:20

数据库MySQL优化技巧

2023-08-22 10:25:19

CSS动画网页

2023-01-13 08:54:20

MySQL数据库

2018-04-15 15:43:46

Git技巧命令

2024-02-19 07:52:40

CSSJS属性

2017-03-07 09:49:18

存储

2016-11-21 12:26:58

编程代码

2019-11-20 10:38:36

路由路由协议路由器

2018-06-21 11:03:54

shelllinux命令

2024-01-03 14:54:56

PythonPandas数据处理工具

2021-01-21 05:47:52

IOLED单片机

2022-03-11 14:59:21

JavaScript数组字符串

2021-12-30 09:39:28

Android 12App开发者

2019-09-25 09:05:52

Python 机器学习编程语言

2021-07-08 16:07:37

人工智能AI无人机

2020-07-09 15:10:20

开发技能代码

2023-12-19 13:31:00

CSS前端技巧

2022-11-04 15:56:41

点赞
收藏

51CTO技术栈公众号