13 个 Python 开发者都应该知道的实用技巧
英文 | https://python.plainenglish.io/13-tips-and-tricks-that-every-python-programmer-should-know-cc2262280b5b
翻译 | 杨小爱
(给七天小码哥加星标,开发与培养你的第二职业能力)
大家好,我是小码哥。
我们都知道 Python 是目前比较流行的编程语言之一,也是每个开发人员的最爱。在今天这篇文章中,我将分享13关于Python开发的实用技巧,这些技巧将帮助你进行日常开发,可以提升你的工作效率,节省你的开发时间,我个人觉得很用,希望它也能帮助到你。
我们现在开始吧。
1. 传递参数而不声明
这个技巧将让您在函数中传递无限参数,而无需在函数体中声明它们。
# Pass Argumentsdef Test_func(*numbers):mul = 1for n in numbers:mul = mul * nprint(mul)Test_func(1, 3, 4) # 12
2. 迭代列表
您可能使用循环来迭代列表,但您知道 python 有什么惊人的迭代列表并在其上执行函数吗?看下面示例代码。
mylst = [11, 22, 33, 44, 55]new = [x * 2 for x in mylst]print(new)
3. 更短的库名称
有时很难在一个程序的多行代码中使用长名称库,本技巧将向您展示如何以简单的 Python 方式缩短您的库名称。
# Shorter Library Namesimport pandas as pdimport numpy as npimport tkinter as tkimport time as t
4. Pyforest
如果你不需要安装 Pandas、NumPy、SciPy、nltk 等流行模块和其他 python 流行库,我推荐你使用这个库。在使用 Pyforest 时,您不需要导入这些模块,但您可以简单地调用它们的函数。
import pyforesta = np.array([[1, 2], [3, 5]])
如果您看过上面的示例代码,您就会知道我没有导入 NumPy 模块并直接使用它们的功能,所以说,这就是使用 Pyforest 的好处。
5. 多输入
这个简单的技巧将帮助您使用一行代码获取多个输入。
# Take Multiple Inputdata = input("Enter num with Spaces: ").split()print(data)# Input1 2 3# Output['1', '2', '3']
6.修剪原始数据
这个很棒的技巧将帮助您以干净的格式修剪原始数据或 Web 数据,有时我们会遇到一些粗大的原始数据,其中包括一些额外的空格、特殊字符等,要清理它,您可以查看以下示例代码。
# Trim Datadata = " Hello"print(data.strip(" ")) # Hellodata = " Hello Pythoneer"print(data.lstrip(" ")) # Hello Pythoneerdata = "Hello Coder$$$"print(data.rstrip("$")) # Hello Coder
7. 运行时处理错误
运行时错误总是让人头疼,为了避免这种头痛,您可以在 Python 中使用运行时错误处理语句。
# Handling Runtime Errorx = 6try:if 5 > 3:x = x * yelse:x = x + yexcept:is not defined")# OutputError CaughtY is not defined
8. lambda 函数
本技巧将指导您使用 lambda 函数在一行中编写小函数,查看下面的示例代码以了解 lambda 的工作原理。
# One liner functions#example 1mul = lambda x : x * 2print(mul(3)) # 6#example 2mul = lambda x,y : x * y * 2print(mul(1,2)) # 4
9. Yield的魔力
Yield 是 Python 中的一个关键字,用于在不破坏其当前状态和局部变量的情况下从函数返回,并且当再次调用该函数时,yield 将从最后一个 yield 语句执行该函数。
# Yielddef func():yield 1yield 2yield 3yield 4for x in func():print(x)#Output:1234
通过上面的示例代码,你会知道,当第一个 yield 返回并且在整个循环中再次调用函数时,它从最后一个 yield 开始,这次是第二个 yield 语句调用。
10. 局部变量和全局变量
这个技巧将指导您如何在函数中声明全局变量和局部变量,通过查看下面的示例代码,您可以了解它们的区别。
# Local and Global Variables# Local variblesa = 5b = 6# Globaldef func():global aa = 6 * 2global aa = 0
11. 智能字典
很多 Python程序员使用括号方法来访问字典中键值的数据,但是,当您遇到关键错误时,程序将停止,为了避免这个运行时发生错误,您可以获取一种方法来访问字典中的键值。
# Dictionary in Smart waymydict = {"a" : 10, "b" : 20, "c" : 30}# Best waymydict.get(mydict["d"]) # None# default waymydict["d"] # KeyError
12. 智能数据交换
这个简单的技巧将向您展示,在不使用临时变量的情况下交换两个值的友好方法。
d1 = 55d2 = 66d2, d1 = d1, d2print(d1, d2)#output66 55
13. Division 2.0
当您需要对两个数字进行除法并以商和余数的形式获得结果时,此提示和技巧很有用,查看下面的代码示例以获得更好的理解。
# Divisionx = 5y = 3div = divmod(x, y)print(div) # (1, 2) --> (Quotient, Remainder)
写在最后的想法
以上就是我今天想跟你分享的13 个关于Python的技巧,它们将帮助您提升工作效率。
如果你觉得今天的内容有用的话,请记得点赞我,关注我,并将这篇文章内容分享热爱编程的朋友,也许能够帮助到他。
最后,感谢您的阅读,Python编程愉快!
推荐小码哥新书!
小码哥新手《Python + Excel/Word/PPT一本通》正式上市了!书中详细介绍了零基础用Python实现办公自动化的各方面知识,提高职场办公效率,附赠PPT/源代码/重点教学视频讲解和作者VIP一对一指导。
内容介绍:《Python + Excel/Word/PPT 一本通》内容介绍
扫码购买
▼点击阅读原文,了解本书详情~

