你需要知道的 20 个 Python 技巧

Posted 海拥✘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你需要知道的 20 个 Python 技巧相关的知识,希望对你有一定的参考价值。

🌊 作者主页:海拥
🌊 作者简介:🏆CSDN全栈领域优质创作者、🥇HDZ核心组成员、🥈蝉联C站周榜前十
🌊 粉丝福利:粉丝群 每周送四本书,每月送各种小礼品(搪瓷杯、抱枕、鼠标垫、马克杯等)

直接跳到末尾 去评论区领书

目录

🥇 1.用itertools排列
👓 2.单行条件表达式
🚋 3. 反转字符串
🐱‍🏍 4. 使用 Assert 处理异常
🎪 5. 对多个输入使用拆分
🎢 6. 用 zip() 转置矩阵
🎈 7. 资源上下文管理器
🎡 8. 下划线作为分隔符
🎠 9. 尝试 f 字符串格式
🧦 10.用这个技巧交换整数
🎱 11. 使用 lambda 代替函数
🎳 12.多次打印无循环
🥅 13. 将字符串解包为变量
🎯 14. 使用 Map 进行列表理解
🎴 15. 从列表中删除重复项
🍫 16. 打印语句中的条件
🍺 17. 条件列表 All 和 Any
🍖 18. 合并两个字典
🚒 19.检查执行时间
🚀 20.检查函数库
🧵 去评论区领书

🥇 1.用itertools排列

在这个程序中,我们导入了名为 itertools 的内置模块。使用 itertools,您可以找到给定字符串的所有排列。在 itertools 中有很多方法,您可以尝试组合和其他方法。

import itertools
name= 'Python'
for i in itertools.permutations(name):
    print(i)                                                                        

回到目录


👓 2.单行条件表达式

此条件表达式已添加到 Python 2.5 版本中。这可以与A if condition else B语法一起使用。首先,评估条件并根据条件的布尔值返回。如果为真,则返回 A,否则,如果为假,则返回 B。

x=10
y=100
res = x if x>y else y
print(f"The greater number is {res}")    

回到目录


🌹 3. 反转字符串

在这个程序中,我们使用扩展切片来反转字符串,扩展切片使用[begin:end:step]语法。所以当我们跳过开始、结束和步骤时,我们传递 (-1) 作为值。这将反转给定的字符串。

string = "medium"
reverse_string = string[::-1]
print(f"The reversed string is {reverse_string}")  

回到目录


🐱‍🏍 4. 使用 Assert 处理异常

异常处理是编程中一个非常重要的概念。使用 assert 关键字和给定的条件打印错误语句。如果给定的条件不为真,那么它将打印一条错误消息并终止程序。

x = int(input("enter a number to divide ")) 
assert x<=-1 and x>0, 'Number should be greater than 0' 
ans = 100/x 
print(f'The output is {ans}')

回到目录


🎪 5. 对多个输入使用拆分

split() 是字符串方法之一,它将字符串拆分为一个列表。此方法中使用的默认分隔符是空格。在这个程序中,不是为输入操作创建三个重复的行,而是用一行替换。

a,b,c = input("Enter the value for a, b, c :").split()
print(a)
print(b)
print(c)    

回到目录


🎢 6. 用 zip() 转置矩阵

Zip 函数具有来自不同列的任意数量的可迭代对象并聚合相应的元组。星号(*) 运算符用于解压缩列表。稍后列表被更改为给定列表的转置矩阵。

matrix=[[1,2],[3,4],[5,6]]
trans=zip( *matrix)
print(list(trans))   

回到目录


🎈 7. 资源上下文管理器

资源管理是编程过程中的重要任务之一。访问和释放文件、锁和其他资源是一项繁忙的任务。如果没有正确关闭资源,可能会导致内存泄漏等几个问题。为了解决这个问题,不要每次都使用 open 和 close 方法,而是使用代码片段中所示的上下文管理器。

with open("demo.txt", mode="w") as file:
    file.write('Hola!')  

回到目录


🎡 8. 下划线作为分隔符

在程序中使用大数字时,使用下划线代替逗号作为分隔符可以提高可读性。Python 语法不承认下划线。它用下划线表示,以首选格式表示数字并且可读。

x = 10_000_000_000
print(f" It is Ten Billion: {x}")                                                       

回到目录


🎠 9. 尝试 f 字符串格式

F 字符串格式是在 Python 3.6 版本中引入的。它是最简单易行的字符串格式化方法。使用 f 字符串格式而不是传统格式使代码易于理解。

Name = input("Enter your name ")
print(f'Hello{Name}! This is a Python Example')    

回到目录


🧦 10.用这个技巧交换整数

注意交换整数是在不使用临时变量的情况下完成的。Python 从左到右计算表达式,但在赋值操作中,首先计算右侧。这为右侧变量(b 和 a)创建了元组,其值是从左侧变量分配的。此过程有助于交换变量。

a,b = input("Enter the value for a, b :").split()
a,b = b,a
print(a,b) 

回到目录


🎱 11. 使用 lambda 代替函数

Lambda 是最强大的函数之一,也称为匿名函数。它不需要名称或函数定义或返回语句。普通函数 def 关键字,而 lambda 函数使用 lambda 关键字。它的工作方式与函数类似,只是它只适用于一个表达式。

x = lambda a, b : a + b
print(x(1, 2))  

回到目录


🎳 12.多次打印无循环

在这个程序中,我们尝试使用单行而不使用循环多次打印语句。星号 (*) 使您能够将语句打印指定的次数。

print("This is a Python example to print this 100 times\\n" *100) 

回到目录


🥅 13. 将字符串解包为变量

一个序列或一个字符串可以解包成不同的变量。在这个程序中,python字符串字母将分别解压到变量中。程序的输出将是 p、y、t。

name='Python'
a,b,c,d,e,f =name
print(a)
print(b)
print(c)                                                                          

回到目录


🎯 14. 使用 Map 进行列表理解

在这个程序中,我们尝试将元素添加到列表中。为此,我们将 lambda 函数与 map 和 list comprehension 结合使用。该程序的输出将是 [12, 15, 18]。

num1=[1,2,3]
num2= [4,5,6]
num3=[7,8,9]
result= map(lambda x,y,z:x+y+z,num1,num2,num3)
print(list(result))  

回到目录


🎴 15. 从列表中删除重复项

在这个程序中,我们尝试从列表中删除重复项。要记住的一件事是集合不允许重复。我们将列表传递给 set(),并再次将其更改为列表,删除列表中的所有重复元素。

old_list = [1,2,2,3,3,4,5,5,6]
new_list = list(set(old_list))
print(new_list)     

回到目录


🍫 16. 打印语句中的条件

这个程序很有趣并且包含了相当多的操作。首先,将执行输入法,然后将输入值更改为整数。然后它将检查条件并返回一个布尔值。如果它返回,一个非零数字奇数将是输出,或者,如果它返回零,那么偶数将是输出。

print("odd" if int(input("enter the value"))%2 else "even")  

回到目录


🍺 17. 条件列表 All 和 Any

在这个程序中,我们一次检查一个条件列表。有两个函数:all()和any()。顾名思义,当我们使用 all() 时,所有条件都必须为真。并且当使用any()时,即使其中一个条件为真,代码块也会被执行。

Marks = 350
Percentage = 60
Passed = 5
Conditions = [Marks>200, Percentage>50,Passed>4]
if(all(Conditions)):
    print("Hired for a company A")
elif(any(Conditions)):
    print("Hired for a company B")
else:
    print("Rejected")   

回到目录


🍖 18. 合并两个字典

这一条现在已经弃用了

在这个程序中,我们尝试合并两个字典。请注意,在此程序中,可以使用“|”完成合并 操作员。

Household = {'Groceries':'100','Electricity':'150'}
Travel = {'Food':'50','Accomodation':'122','Transport':'70'}
Expense = Household | Travel
print(Expense)  

回到目录


🚒 19.检查执行时间

通过导入timeit包来检查程序的执行时间。在这个程序中,形成一个1到1000个列表的执行时间。

import timeit
execution_time = timeit.timeit('list(range(1,1000))')
print(execution_time)    

回到目录


🚀 20.检查函数库

在这个程序中,我们尝试检查函数的库。itertools 的所有属性和模块都会用这个程序打印出来。

import itertools
print(dir(itertools))  

回到目录


🥇 评论区抽粉丝送书啦

💌 欢迎大家在评论区提出意见和建议! (抽两位幸运儿送书,实物图如下)💌

《机器学习与深度学习算法基础》

【内容简介】

本书从机器学习的概念与基本原理开始,介绍了机器学习及近年来流行的深度学习领域的经典模型。阅读本书可以让读者系统地了解机器学习和深度学习领域的基本知识,领会模型算法的思路与策略。
  本书分为两篇,共18章。一篇为经典机器学习模型,主要介绍常用的机器学习经典模型,包括线性回归、支持向量机模型、逻辑斯蒂回归、决策树模型、k近邻、朴素贝叶斯、线性判别分析和主成分分析、流形学习、聚类算法、稀疏编码、直推式支持向量机、集成算法。第二篇为深度学习模型与方法,剖析神经网络的基本要素,并介绍常用的深度学习模型,包括感知机、卷积神经网络、循环神经网络、生成对抗网络。

也有不想靠抽,想自己买的同学可以参考下面的链接

京东自营购买链接:

《机器学习与深度学习算法基础》(贾壮) - 京东图书

当当自营购买链接:

《机器学习与深度学习算法基础》- 当当图书

📣 注意:

大家点赞关注,三天后也就是 10月25日 从评论区留言的同学中抽取两位送书

🌊 面试题库:Java、Python、前端核心知识点大全和面试真题资料
🌊 电子图书:图灵程序丛书 300本、机械工业出版社6000册免费正版图书
🌊 办公用品:精品PPT模板几千套,简历模板一千多套
🌊 学习资料:2300套PHP建站源码,微信小程序入门资料

如果中奖了联系不上则视为放弃,可以从下方公众号里找到作者的联系方式,每周都会送四本书,后面送书力度还会加大,一年送几百上千本不是问题,回复【进群】领书不迷路,群内 每位成员 我都会送一本。回复【资源】可获取上面的资料👇🏻👇🏻👇🏻

以上是关于你需要知道的 20 个 Python 技巧的主要内容,如果未能解决你的问题,请参考以下文章

你需要知道的 20 个 Python 技巧

你可能不知道的JavaScript代码片段和技巧(下)

你可能不知道的JavaScript代码片段和技巧(上)

你必须掌握的20个python代码,短小精悍,用处无穷

你必须掌握的20个python代码,短小精悍,用处无穷

速度收藏20个常用的Python技巧,太赞啦