本篇文章為大家展示了25個超有用的Python代碼段有哪些,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)公司是由多位在大型網(wǎng)絡(luò)公司、廣告設(shè)計公司的優(yōu)秀設(shè)計人員和策劃人員組成的一個具有豐富經(jīng)驗的團(tuán)隊,其中包括網(wǎng)站策劃、網(wǎng)頁美工、網(wǎng)站程序員、網(wǎng)頁設(shè)計師、平面廣告設(shè)計師、網(wǎng)絡(luò)營銷人員及形象策劃。承接:成都網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)站改版、網(wǎng)頁設(shè)計制作、網(wǎng)站建設(shè)與維護(hù)、網(wǎng)絡(luò)推廣、數(shù)據(jù)庫開發(fā),以高性價比制作企業(yè)網(wǎng)站、行業(yè)門戶平臺等全方位的服務(wù)。Python是一種通用的高級編程語言。用它可以做許多事,比如開發(fā)桌面 GUI 應(yīng)用程序、網(wǎng)站和 Web 應(yīng)用程序等。
作為一種高級編程語言,Python 還可以讓你通過處理常見的編程任務(wù)來專注應(yīng)用程序的核心功能。并且,編程語言的簡單語法規(guī)則進(jìn)一步簡化了代碼庫的可讀性和應(yīng)用程序的可維護(hù)性。
與其他編程語言相比,Python 的優(yōu)勢在于:
與主要平臺和操作系統(tǒng)兼容;
有許多開源框架和工具;
代碼具備可讀性和可維護(hù)性;
健壯的標(biāo)準(zhǔn)庫;
標(biāo)準(zhǔn)測試驅(qū)動開發(fā)
在本文中,我將介紹 25 個簡短且有用的代碼段,它們可以幫你完成日常任務(wù)。
1、在兩個變量之間交換值
在其他語言中,要在兩個變量間交換值而不是用第三個變量,我們要么使用算術(shù)運算符,要么使用位異或(Bitwise XOR)。在 Python 中,它就簡單多了,如下所示。
a = 5b = 10 a,b = b,aprint(a) # 10print(b) # 5
2、檢查給定的數(shù)字是否為偶數(shù)
如果給定的數(shù)字為偶數(shù),則如下函數(shù)返回 Ture,否則返回 False。
def is_even(num): eturn num % 2 == 0 is_even(10) # True
3、將多行字符串拆分為行列表
以下函數(shù)可用于將多行字符串拆分為行列表。
def split_lines(s): return s.split('n')split_lines('50n pythonn snippets') # ['50', ' python', ' snippets']
4、查找對象使用的內(nèi)存
標(biāo)準(zhǔn)庫的 sys 模塊提供了 getsizeof() 函數(shù)。該函數(shù)接受一個對象,調(diào)用對象的 sizeof() 方法,并返回結(jié)果,這樣做能使對象可檢查。
import sysprint(sys.getsizeof(5)) # 28print(sys.getsizeof("Python")) # 55
5、反轉(zhuǎn)字符串
Python 字符串庫不像其他 Python 容器(如 list) 那樣支持內(nèi)置的 reverse()。反轉(zhuǎn)字符串有很多方法,其中最簡單的方法是使用切片運算符(slicing operator)。
language = "python"reversed_language = language[::-1]print(reversed_language) # nohtyp
6、打印字符串 n 次
在不使用循環(huán)的情況下,要打印一個字符串 n 次是非常容易的,如下所示。
def repeat(string, n): return (string * n) repeat('python', 3) # pythonpythonpython
7、檢查字符串是否為回文
以下函數(shù)用于檢查字符串是否為回文。
def palindrome(string): return string == string[::-1] palindrome('python') # False
8、將字符串列表合并為單個字符串
下面的代碼段將字符串列表組合成單個字符串。
strings = ['50', 'python', 'snippets']print(','.join(strings)) # 50,python,snippets
9、查找列表的第一個元素
此函數(shù)返回所傳遞列表的第一個元素。
def head(list): return list[0] print(head([1, 2, 3, 4, 5])) # 1
10、查找存在于兩個列表中任一列表存在的元素
此函數(shù)返回兩個列表中任一列表中的每個元素。
def union(a,b): return list(set(a + b))union([1, 2, 3, 4, 5], [6, 2, 8, 1, 4]) # [1,2,3,4,5,6,8]
11、查找給定列表中的所有元素
此函數(shù)返回給定列表中存在的元素。
def unique_elements(numbers): return list(set(numbers)) unique_elements([1, 2, 3, 2, 4]) # [1, 2, 3, 4]
12、求一組數(shù)字的平均值
此函數(shù)返回列表中兩個或多個數(shù)字的平均值。
def average(*args): return sum(args, 0.0) / len(args) average(5, 8, 2) # 5.0
13、檢查列表是否包含所有值
此函數(shù)檢查列表中的所有元素是否都是的。
def unique(list): if len(list)==len(set(list)): print("All elements are unique") else: print("List has duplicates") unique([1,2,3,4,5]) # All elements are unique
14、跟蹤列表中元素的頻率
Python 計數(shù)器跟蹤容器中每個元素的頻率。Counter() 返回一個以元素為鍵、以其出現(xiàn)頻率為值的字典。
from collections import Counterlist = [1, 2, 3, 2, 4, 3, 2, 3]count = Counter(list)print(count) # {2: 3, 3: 3, 1: 1, 4: 1}
15、查找列表中最常用的元素
此函數(shù)返回列表中出現(xiàn)頻率高的元素。
def most_frequent(list): return max(set(list), key = list.count) numbers = [1, 2, 3, 2, 4, 3, 1, 3]most_frequent(numbers) # 3
16、將角度轉(zhuǎn)換為弧度
下面的函數(shù)用于將角度轉(zhuǎn)換為弧度。
import mathdef degrees_to_radians(deg): return (deg * math.pi) / 180.0 degrees_to_radians(90) # 1.5707963267948966
17、計算執(zhí)行一段代碼所需的時間
以下代碼段用于計算執(zhí)行一段代碼所需的時間。
import timestart_time = time.time()a,b = 5,10c = a+bend_time = time.time()time_taken = (end_time- start_time)*(10**6)print("Time taken in micro_seconds:", time_taken) # Time taken in micro_seconds: 39.577484130859375
18、查找數(shù)字列表的較大公約數(shù)
此函數(shù)計算數(shù)字列表中的較大公約數(shù)。
from functools import reduceimport mathdef gcd(numbers): return reduce(math.gcd, numbers)gcd([24,108,90]) # 6
19、查找字符串中的字符
此代碼段可用于查找字符串中的所有字符。
string = "abcbcabdb" unique = set(string)new_string = ''.join(unique)print(new_string) # abcd
20、使用 lambda 函數(shù)
Lambda 是一個匿名函數(shù),它只能保存一個表達(dá)式。
x = lambda a, b, c : a + b + cprint(x(5, 10, 20)) # 35
21、使用映射函數(shù)
此函數(shù)在將給定函數(shù)應(yīng)用于給定迭代的每個項(列表、元組等)之后,返回一個結(jié)果列表。
def multiply(n): return n * n list = (1, 2, 3) result = map(multiply, list) print(list(result)) # {1, 4, 9}
22、使用篩選函數(shù)
此函數(shù)在通過一個函數(shù)過濾給定的序列,測試序列中的每個元素是否為真。
arr = [1, 2, 3, 4, 5]arr = list(filter(lambda x : x%2 == 0, arr))print (arr) # [2, 4]
23、使用列表解析
列表解析(list comprehensions)為我們提供了一種基于某些迭代創(chuàng)建列表的簡單方法。在創(chuàng)建過程中,可以將來自可迭代的元素有條件地包含到新列表中,并根據(jù)需要進(jìn)行轉(zhuǎn)換。
numbers = [1, 2, 3]squares = [number**2 for number in numbers]print(squares) # [1, 4, 9]
24、使用切片運算符
切片(Slicing)用于從給定序列中提取連續(xù)的元素序列或子序列。下面的函數(shù)用于連接兩個切片運算的結(jié)果。首先,我們將列表從索引 d 切片到末尾,然后從開頭切片到索引 d。
def rotate(arr, d): return arr[d:] + arr[:d] if __name__ == '__main__': arr = [1, 2, 3, 4, 5] arr = rotate(arr, 2) print (arr) # [3, 4, 5, 1, 2]
25、使用函數(shù)鏈?zhǔn)秸{(diào)用
最后的代碼段用于從一行調(diào)用多個函數(shù)并計算結(jié)果。
def add(a, b): return a + bdef subtract(a, b): return a - ba, b = 5, 10print((subtract if a > b else add)(a, b)) # 15
上述內(nèi)容就是25個超有用的Python代碼段有哪些,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。