22 个专业有用的Python代码片段
Python 是顶级编程语言,在解决日常生活问题方面非常有帮助。在本文中,我将向你简要介绍 22 个有用的代码片段,让你可以像专业人士一样使用 Python 编写代码。此代码段还将帮助你解决日常生活中的编程问题。
有些片段你以前可能遇到过,有些片段对你来说是新的和有趣的。这些片段很容易学习。
1. 获取元音
"a e i o u"此代码段将在字符串中找到元音。当你查找或检测元音时,这将派上用场。
def get_vowels(String):
return [each for each in String if each in "aeiou"]
get_vowels("animal") # [a, i, a]
get_vowels("sky") # []
get_vowels("football") # [o, o, a]
2.首字母大写
此代码段将用于将字符串中字符的每个首字母大写。它可以处理具有一个或多个字符的字符串。这将在文本分析或将数据写入文件等中派上用场。
def capitalize(String):
return String.title()
capitalize("python programming") # [Python Programming]
capitalize("how are you!") # [How Are You!]
3.打印字符串N次
此代码段可以打印任何字符串 n 次,而无需使用任何 python 循环。
n=5
string="Hello World "
print(string * n)
#Hello World Hello World Hello World Hello World Hello World
4.合并两个字典
此代码段会将两个字典合并为一个。检查以下代码以了解此方法的工作原理。
def merge(dic1,dic2):
dic3=dic1.copy()
dic3.update(dic2)
return dic3dic1={1:"hello", 2:"world"}
dic2={3:"Python", 4:"Programming"}
merge(dic1,dic2) # {1: 'hello', 2: 'world', 3:"Python",4:"Programming"}
5.计算执行时间
当你想知道程序或函数完成执行所需的时间时,此代码段对你很有用。
import time
start_time= time.time()
def fun():
a=2
b=3
c=a+b
end_time= time.time()
fun()
timetaken = end_time - start_time
print("Your program takes:", timetaken ) # 0.0345
6.交换值
此代码段是一种无需使用第三个变量即可交换两个变量的快速方法。
a=3
b=4a, b = b, a
print(a, b) # a= 4, b =3
7.检查重复
此方法是检查列表中重复项的最快方法。
def check_duplicate(lst):
return len(lst) != len(set(lst))
check_duplicate([1,2,3,4,5,4,6]) # True
check_duplicate([1,2,3]) # False
check_duplicate([1,2,3,4,9]) # False
8.过滤错误值
此代码段用于删除列表中的任何虚假值,例如false,0,None, " " . 检查以下代码以了解此方法的工作原理。
def Filtering(lst):
return list(filter(None,lst))
lst=[None,1,3,0,"",5,7]
Filtering(lst) #[1, 3, 5, 7]
9. 字节大小
此代码段将以字节大小返回字符串的长度。当你想知道任何字符串变量的大小时,这将派上用场。
def ByteSize(string):
return len(string.encode("utf8")) ByteSize("Python") #6
ByteSize("Data") #4
10. 内存使用
此代码段用于获取 python 中任何变量使用的内存。
import sys
var1="Python"
var2=100
var3=True
print(sys.getsizeof(var1)) #55
print(sys.getsizeof(var2)) #28
print(sys.getsizeof(var3)) #28
11. 字谜
此代码段可用于检查字符串是否为字谜。字谜是如果我们改写它们将是相同的单词。
from collections import Counter
def anagrams(str1, str2):
return Counter(str1) == Counter(str2)
anagrams("abc1", "1bac") # True
12.排序列表
此代码段将对你的列表进行排序。排序是一项常见任务,可以通过循环使用多行代码来完成,但你可以使用内置的排序方法加快工作速度 想知道如何?检查下面的代码。
my_list = ["leaf", "cherry", "fish"]
my_list1 = ["D","C","B","A"]
my_list2 = [1,2,3,4,5]
my_list.sort() # ['cherry', 'fish', 'leaf']
my_list1.sort() # ['A', 'B', 'C', 'D']
print(sorted(my_list2, reverse=True)) # [5, 4, 3, 2, 1]
13. 排序字典
此代码段将用于对字典进行排序。查看以下代码以了解其工作原理。
orders = {
"披萨":200,
"汉堡":56,
"百事可乐":25,
"咖啡":14
}
sorted_dic=sorted(orders.items(), key=lambda x: x[1])
print(sorted_dic) # [('咖啡', 14), ('百事可乐', 25), ('汉堡', 56), ("披萨",200)]
14. 检索列表的最后一个元素
此片段将显示如何检索列表的最后一个元素。
my_list = ["Python"、"JavaScript"、"C++"、"Java"、"C#"、"Dart"]
#method 1
print(my_list[-1]) # Dart
#method 2
print(my_list.pop()) # Dart
15.逗号分隔为字符串
此片段代码会将逗号分隔的列表转换为单个字符串。当你想用字符串加入整个列表时,这会派上用场。
my_list1=["Python","JavaScript","C++"]
my_list2=["Java", "Flutter", "Swift"]
#example 1
("我最喜欢的编程语言是" , ", ".join(my_list1))
# 我最喜欢的编程语言是 Python, JavaScript, C++
print(", ".join(my_list2)) # Java, Flutter, Swift
16. 回文检查
这个片段将向你展示如何在 python 中快速检查回文。
def palindrome(data):
return data == data[::-1] palindrome("level") #True
palindrome("madaa") #False
17.随机打印列表
此代码段将向你展示如何以简单快捷的方式随机播放列表。
from random import shuffle
my_list1=[1,2,3,4,5,6]
my_list2=["A","B","C","D"]shuffle(my_list1) # [4, 6, 1, 3, 2, 5]
shuffle(my_list2) # ['A', 'D', 'B', 'C']
18. 字符串大小写转换
此代码段将向你展示我们如何以简单的方式将字符串转换为小写或大写。
str1 ="Python Programming"
str2 ="IM A PROGRAMMER"
print(str1.upper()) #PYTHON PROGRAMMING
print(str2.lower()) #im a programmer
19. 格式化字符串
此代码段代码将有助于格式化你的字符串。在 python 中格式化意味着将你的字符串附加到可变数据中。查看下面的代码。
#example 1
str1 ="Python Programming"
str2 ="I'm a {}".format(str1) # I'm a Python Programming
#example 2 - another way
str1 ="Python Programming"
str2 =f"I'm a {str1}" # I'm a Python Programming
20. 查找子串
当你在字符串中查找子字符串时,此代码段很有用,我将向你展示两种方法来做到这一点,而无需编写一堆长代码。
programmers = ["我是一名专业的 Python 程序员"、
"我是一名专业的 Javascript 程序员"、
"我是一名专业的 Python 程序员"
"我是一名初学者 C++ 程序员"
]
#method 1
for p in programmers:
if p.find("Python"):
print(p)
#method 2
for p in programmers:
if "Python" in p:
print(p)
21. 在同一行打印
如果你使用了两个打印函数,它们将在每一行中打印,你就会知道每一行的打印函数输出。此代码段将向你展示如何在同一行上打印而不进入新行。
# 最快的方法
import sys
sys.stdout.write("使命召唤")
sys.stdout.write("和黑色行动")
# 输出:使命召唤和黑色行动
# 另一种方式,但只适用于python 3
print("Python ", end="")
print("Programming")
# output: Python Programming
22. 块
此片段代码将向你展示将列表分块并将其分成更小的部分。
def chunk(my_list, size):
return [my_list[i:i+size] for i in range(0,len(my_list), size)] my_list = [1, 2, 3, 4, 5, 6]
chunk(my_list, 2) # [[1, 2], [3, 4], [5, 6]]
来源:https://python.plainenglish.io/22-useful-snippets-to-code-like-a-pro-in-python
编辑:@公众号:数据STUDIO
🏴☠️宝藏级🏴☠️ 原创公众号『数据STUDIO』内容超级硬核。公众号以Python为核心语言,垂直于数据科学领域,包括可戳👉Python|MySQL|数据分析|数据可视化|机器学习与数据挖掘|爬虫 等,从入门到进阶!
长按👇关注- 数据STUDIO -设为星标,干货速递