最实用的20个python小技巧

目录
  • 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 timesn" *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))

到此这篇关于最实用的20个python小技巧的文章就介绍到这了,更多相关实用python小技巧内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 经验丰富程序员才知道的8种高级Python技巧

    本文将介绍8个简洁的Python技巧,若非经验十足的程序员,你肯定有些从未见过.向着更简洁更高效,出发吧! 1.通过多个键值将对象进行排序 假设要对以下字典列表进行排序: people = [ { 'name': 'John', "age": 64 }, { 'name': 'Janet', "age": 34 }, { 'name': 'Ed', "age": 24 }, { 'name': 'Sara', "age": 6

  • 分享13个好用到起飞的Python技巧

    目录 前言 列表 1. 将两个列表合并到一个字典中 2.将两个或多个列表合并为一个列表 3. 对字典列表进行排序 4. 对字符串列表进行排序 5. 根据另一个列表对列表进行排序 6. 将列表映射到字典 字典 7. 合并两个或多个字典 8. 反转字典 字符串 9. 使用 f 字符串格式化字符串 10. 检查子串 11. 以字节为单位获取字符串的大小 输入/输出操作 12. 检查文件是否存在 13.解析电子表格 总结 前言 Python 因其在各个领域的实用性.与 Java.C 和 C++ 等其他编

  • 了解不常见但是实用的Python技巧

    1.交换变量值 2.将一列表中的所有元素拼接成字符串 3.查找list中最高频率的值 4.检查两个单词是否是字谜(组成的字母和对应数量一致) 5.反转字符串 6.反转列表 7.转置2维数组 8.链式比较 9.链式函数调用 10.复制列表 11.Dictionary Get 12.按值排序字典 13.For Else 14.将列表转换为逗号分隔的字符串 15.合并字典 16.list中的最小和最大索引 17.从列表中删除重复项 查看英文原文 :https://hackernoon.com/pyth

  • 一篇文章带你了解几个好用的Python技巧

    目录 列表 1. 将两个列表合并到一个字典中 2.将两个或多个列表合并为一个列表 3. 对字典列表进行排序 4. 对字符串列表进行排序 5. 根据另一个列表对列表进行排序 6. 将列表映射到字典 字典 7. 合并两个或多个字典 8. 反转字典 字符串 9. 使用 f 字符串格式化字符串 10. 检查子串 11. 以字节为单位获取字符串的大小 输入/输出操作 12. 检查文件是否存在 13.解析电子表格 总结 列表 与列表相关的6个操作,介绍如下; 1. 将两个列表合并到一个字典中 假设我们在Py

  • 40个你可能不知道的Python技巧附代码

    1.拆箱 >>> a, b, c = 1, 2, 3 >>> a, b, c (1, 2, 3) >>> a, b, c = [1, 2, 3] >>> a, b, c (1, 2, 3) >>> a, b, c = (2 * i + 1 for i in range(3)) >>> a, b, c (1, 3, 5) >>> a, (b, c), d = [1, (2, 3),

  • python进阶从青铜到王者一定会用上的Python技巧

    目录 1.如何判断一个列表中的数值是否全部小于某个数 2.如何对列表中的字符串按照特定要求进行排序 3.如何实现按照键或者数值对字典进行排序 4.怎么将列表中的数字转换成字符串 5.如何判断列表中的元素是否都属于一个类型 6.列表怎么反转呢 7.如何从可迭代对象中随机选择一个元素 9.筛选出以元音字母开头的字符串 10.创建一个计数字典的方法 每个案例都有两种解决方法,第一种方法相对小白,第二种方法则是属于有经验的高手写法. 下面有请青铜和王者两位选手进场.各位同学请对号入座~ 1.如何判断一个

  • 最实用的20个python小技巧

    目录 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.

  • 3分钟学会一个Python小技巧

    Python时间日期转换在开发中是非常高频的一个操作,你经常会遇到需要将字符串转换成 datetime 或者是反过来将 datetime 转换成字符串. datetime 分别提供了两个方法 strptime 和 strftime ,但是我们老是被这两个方法搞混,不知道哪个是字符串转 datetime,哪个是 datetime 转字符串,每次都要去百度 Google 一下,或者跑去查个文档. 其实,这两个方法可以稍微用点技巧把这两个方法记住,而且是永远的记住. strptime strptime

  • 经验丰富程序员才知道的15种高级Python小技巧(收藏)

    目录 1.通过多个键值将对象进行排序 2.数据类别 3.列表推导 4.检查对象的内存使用情况 5.查找最频繁出现的值 6.属性包 7.合并字典(Python3.5+) 8.返回多个值 9.列表元素的过滤 filter()的使用 10.修改列表 11.利用zip()来组合列表 12.颠倒列表 13.检查列表中元素的存在情况 14.展平嵌套列表 15.检查唯一性 1.通过多个键值将对象进行排序 假设要对以下字典列表进行排序: people = [ { 'name': 'John', "age&quo

  • 你需要掌握的20个Python常用技巧

    目录 1.字符串反转 2.每个单词的第一个字母大写 3.字符串查找唯一元素 4.重复打印字符串和列表n次 5.列表生成 6.变量交换 7.字符串拆分为子字符串列表 8.多个字符串组合为一个字符串 9.检测字符串是否为回文 10.统计列表中元素的次数 11.判断两个字符串是否为Anagrams 12.使用try-except-else-block模块 13.使用枚举函数得到key/value对 14.检查对象的内存使用情况 15.合并字典 16.计算执行一段代码所花费的时间 17.列表展开 18.

  • Python小技巧练习分享

    目录 1.反转数字 2.类的说明文档 3.设置 Python 文件的编码 4.旋转字符串 5.实现控制台滚动条 6.print 函数直接写入文件 7.合并 2 个列表 1.反转数字 问题场景: 把数字 789 转换为 987. 典型的数字翻转问题. 解决思路: 将数字的百位十位个位拆解出来,就解开了 编码如下: def reverse_number(number): baiwei = int(number/100) shiwei = int(number%100/10) gewei = int(

  • 10个Python小技巧你值得拥有

    列表推导式 你有一个list: bag = [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子: [2, 4, 6, 8, 10] 大多初学者,根据之前语言的经验会大概这样来做 bag = [1, 2, 3, 4, 5] for i in range(len(bag)): bag[i] = bag[i] * 2 但是有更好的方法: bag = [elem * 2 for elem in bag] 很简洁对不对?这叫做Python的列表推导式 . 遍历列表 还是上面的列表

  • 超级实用的8个Python列表技巧

    列表(List)是你使用Python过程中接触最为频繁的数据结构,也是功能最为强大的几种数据结构之一.Python列表非常的万能且蕴含着许多隐藏技巧,下面我们就来探索一些常用的列表技巧. 一.列表元素的过滤 1. filter()的使用 filter()函数接受2个参数:1个函数对象以及1个可迭代的对象,接下来我们定义1个函数然后对1个列表进行过滤. 首先我们创建1个列表,并且剔除掉小于等于3的元素: 回顾一下发生了什么: 我们定义了列表original_list接着我们定义了一个接受数值型参数

  • python小技巧——将变量保存在本地及读取

    在用jupyter notebook写python代码的过程中会产生很多变量,而关闭后或者restart jupyter kernel后所有变量均会消失,想要查看变量就必须将代码重新再运行一遍,而想在另一个jupyter notebook中调用变量就更加麻烦.在运行时间很长的代码中将变量保存下来能够节省很多事. 那就开始吧! 我用到的包是pickle 1.在使用之前首先需要导入包: import pickle 2.导入包后即可开始实质性操作,我们定义保存变量和读取变量的函数. 保存变量函数: d

  • 17个Python小技巧分享

    1.交换变量 复制代码 代码如下: x = 6 y = 5 x, y = y, x print x >>> 5 print y >>> 6 2.if 语句在行内 复制代码 代码如下: print "Hello" if True else "World" >>> Hello 3.连接 下面的最后一种方式在绑定两个不同类型的对象时显得很酷. 复制代码 代码如下: nfc = ["Packers",

  • 使用Python解决Windows文件名非用反斜杠问题(python 小技巧)

    在编程过程中,我们往往会遇到一个小麻烦--微软 Windows 系统在文件夹名之间使用反斜杠字符,而几乎所有其它的计算机(操作系统)都使用正斜杠: Windows filenames: C:\some_folder\some_file.txt Most other operating systems: /some_folder/some_file.txt 这是由于上世纪 80 年代早期计算机历史上的一个小意外.「MS-DOS」的第一版使用了正斜杠字符来指定命令行选项.当微软在「MS-DOS 2.

随机推荐

其他