摘要:一些復雜的任務,甚至可以使用一行代碼就能搞定。下面,小給大家介紹個有趣的一行代碼,都很實用。希望大家能從中找到對自己有幫助的技巧。字母異位詞兩個單詞如果包含相同的字母,次序不同,則稱為字母易位詞。
公眾號后臺回復“圖書“,了解更多號主新書內容
? ? ?作者:小F
? ? ?來源:法納斯特
在學習Python的過程中,總會發現Python能夠輕易的解決許多問題。
一些復雜的任務,甚至可以使用一行Python代碼就能搞定。
下面,小F給大家介紹50個有趣的Python一行代碼,都很實用。
希望大家能從中找到對自己有幫助的技巧。
▍1、字母異位詞
兩個單詞如果包含相同的字母,次序不同,則稱為字母易位詞(anagram)。
例如,“silent”和“listen”是字母易位詞,而“apple”和“aplee”不是易位詞。
from?collections?import?Counters1?=?"below"s2?=?"elbow"print("anagram")?if?Counter(s1)?==?Counter(s2)?else?print("not?an?anagram")
使用一行Python代碼,就能判斷出來了。
▍2、二進制轉十進制
decimal?=?int("1010",?2)print(decimal)?#10
▍3、將字符串轉換為小寫
print("Hi?my?name?is?XiaoF".lower())#?"hi?my?name?is?xiaof"print("Hi?my?name?is?XiaoF".casefold())#?"hi?my?name?is?xiaof"
▍4、將字符串轉換為大寫
print("hi?my?name?is?XiaoF".upper())#?"HI?MY?NAME?IS?XIAOF"
▍5、將字符串轉換為字節
print("convert?string?to?bytes?using?encode?method".encode())#?b"convert?string?to?bytes?using?encode?method"
▍6、拷貝文件
import?shutilshutil.copyfile("source.txt",?"dest.txt")
▍7、快速排序
qsort?=?lambda?l:?l?if?len(l)?<=?1?else?qsort([x?for?x?in?l[1:]?if?x?=?l[0]])print(qsort([17,?29,?11,?97,?103,?5]))#?[5,?11,?17,?29,?97,?103]
▍8、n個連續數的和
n?=?10print(sum(range(0,?n+1)))#?55
▍9、交換兩個變量的值
a,b?=?b,a
▍10、斐波納契數列
fib?=?lambda?x:?x?if?x<=1?else?fib(x-1)?+?fib(x-2)print(fib(20))#?6765
▍11、將嵌套列表合并為一個列表
main_list?=?[[0,?1,?2],?[11,?12,?13],?[52,?53,?54]]result?=?[item?for?sublist?in?main_list?for?item?in?sublist]print(result)>[0,?1,?2,?11,?12,?13,?52,?53,?54]
▍12、運行一個HTTP服務器
python3?-m?http.server?8000python2?-m?SimpleHTTPServer
▍13、反轉列表
numbers?=?[0,?1,?2,?11,?12,?13,?52,?53,?54]print(numbers[::-1])#?[54,?53,?52,?13,?12,?11,?2,?1,?0]
▍14、階乘
import?mathfact_5?=?math.factorial(5)print(fact_5)#?120
▍15、在列表推導式中使用for和if
even_list?=?[number?for?number?in?[1,?2,?3,?4]?if?number?%?2?==?0]print(even_list)#?[2,?4]
▍16、列表中最長的字符串
words?=?["This",?"is",?"a",?"list",?"of",?"words"]result?=?max(words,?key=len)print(result)#?"words"
▍17、列表推導式
li?=?[num?for?num?in?range(0,?10)]print(li)#?[0,?1,?2,?3,?4,?5,?6,?7,?8,?9]
▍18、集合推導式
num_set?=?{num?for?num?in?range(0,?10)}print(num_set)#?{0,?1,?2,?3,?4,?5,?6,?7,?8,?9}
▍19、字典推導式
dict_numbers?=?{x:?x*x?for?x?in?range(1,?5)}print(dict_numbers)#?{1:?1,?2:?4,?3:?9,?4:?16}
▍20、if-else
print("even")?if?4?%?2==0?else?print("odd")
▍21、無限循環
while?1:0
▍22、檢查數據類型
print(isinstance(2,?int))#?Trueprint(isinstance("allwin",?str))#?Trueprint(isinstance([3,?4,?1997],?list))#?True
▍23、While循環
a?=?5while?a?>?0:????a?=?a?-?1print(a)#?0
▍24、使用print語句寫入文件
print("Hello,?World!",?file=open("file.txt",?"w"))
既可打印出信息,還能將信息保存文件。
▍25、計算一個字符在字符串中出現的頻率
print("umbrella".count("l"))#?2
▍26、合并列表
list1?=?[1,?2,?4]list2?=?["XiaoF"]list1.extend(list2)print(list1)#?[1,?2,?4,?"XiaoF"]
▍27、合并字典
dict1?=?{"name":?"weiwei",?"age":?23}dict2?=?{"city":?"Beijing"}dict1.update(dict2)print(dict1)#?{"name":?"weiwei",?"age":?23,?"city":?"Beijing"}
▍28、合并集合
set1?=?{0,?1,?2}set2?=?{11,?12,?13}set1.update(set2)print(set1)#?{0,?1,?2,?11,?12,?13}
▍29、時間戳
import?timeprint(time.time())
▍30、列表中出現次數最多的元素
test_list?=?[9,?4,?5,?4,?4,?5,?9,?5,?4]most_frequent_element?=?max(set(test_list),?key=test_list.count)print(most_frequent_element)#?4
▍31、嵌套列表
numbers?=?[[num]?for?num?in?range(10)]print(numbers)#?[[0],?[1],?[2],?[3],?[4],?[5],?[6],?[7],?[8],?[9]]
▍32、八進制轉十進制
print(int("30",?8))?#?24
▍33、將鍵值對轉換為字典
result?=?dict(name="XiaoF",?age=23)print(result)#?{"name":?"XiaoF",?"age":?23}
▍34、求商和余數
quotient,?remainder?=?divmod(4,?5)print(quotient,?remainder)#?0?4
divmod()函數返回當參數1除以參數2時,包含商和余數的元組。
▍35、刪除列表中的重復項
print(list(set([4,?4,?5,?5,?6])))#?[4,?5,?6]
▍36、按升序排序列表
print(sorted([5,?2,?9,?1]))#?[1,?2,?5,?9]
▍37、按降序排序列表
print(sorted([5,?2,?9,?1],?reverse=True))#?[9,?5,?2,?1]
▍38、獲取小寫字母表
import?stringprint(string.ascii_lowercase)#?abcdefghijklmnopqrstuvwxyz
▍39、獲取大寫字母表
import?stringprint(string.ascii_uppercase)#?ABCDEFGHIJKLMNOPQRSTUVWXYZ
▍40、獲取0到9字符串
import?stringprint(string.digits)#?0123456789
▍41、十六進制轉十進制
print(int("da9",?16))#?3497
▍42、日期時間
import?timeprint(time.ctime())#?Thu?Aug?13?20:00:00?2021
▍43、將列表中的字符串轉換為整數
print(list(map(int,?["1",?"2",?"3"])))#?[1,?2,?3]
▍44、用鍵對字典進行排序
d?=?{"one":?1,?"four":?4,?"eight":?8}result?=?{key:?d[key]?for?key?in?sorted(d.keys())}print(result)#?{"eight":?8,?"four":?4,?"one":?1}
▍45、用鍵值對字典進行排序
x?=?{1:?2,?3:?4,?4:?3,?2:?1,?0:?0}result?=?{k:?v?for?k,?v?in?sorted(x.items(),?key=lambda?item:?item[1])}print(result)#?{0:?0,?2:?1,?1:?2,?4:?3,?3:?4}
▍46、列表旋轉
li?=?[1,?2,?3,?4,?5]#?li[n:]?+?li[:n],?右變左print(li[2:]?+?li[:2])#?[3,?4,?5,?1,?2]#?li[-n:]?+?li[:-n],?左變右print(li[-1:]?+?li[:-1])#?[5,?1,?2,?3,?4]
▍47、將字符串中的數字移除
message?=?"".join(list(filter(lambda?x:?x.isalpha(),?"abc123def4fg56vcg2")))print(message)#?abcdeffgvcg
▍48、矩陣變換
old_list?=?[[1,?2,?3],?[3,?4,?6],?[5,?6,?7]]result?=?list(list(x)?for?x?in?zip(*old_list))print(result)#?[[1,?3,?5],?[2,?4,?6],?[3,?6,?7]]
▍49、列表過濾
result?=?list(filter(lambda?x:?x?%?2?==?0,?[1,?2,?3,?4,?5,?6]))print(result)#?[2,?4,?6]
▍50、解包
a,?*b,?c?=?[1,?2,?3,?4,?5]print(a)?#?1print(b)?#?[2,?3,?4]print(c)?#?5
◆?◆?◆ ?◆?◆麟哥新書已經在當當上架了,我寫了本書:《拿下Offer-數據分析師求職面試指南》,目前當當正在舉行活動,大家可以用相當于原價5折的預購價格購買,還是非常劃算的:
數據森麟公眾號的交流群已經建立,許多小伙伴已經加入其中,感謝大家的支持。大家可以在群里交流關于數據分析&數據挖掘的相關內容,還沒有加入的小伙伴可以掃描下方管理員二維碼,進群前一定要關注公眾號奧,關注后讓管理員幫忙拉進群,期待大家的加入。管理員二維碼:猜你喜歡●?臥槽!原來爬取B站彈幕這么簡單●?厲害了!麟哥新書登頂京東銷量排行榜!●?笑死人不償命的知乎沙雕問題排行榜●?用Python扒出B站那些“驚為天人”的阿婆主!●?你相信逛B站也能學編程嗎
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/119998.html
摘要:比如把上面畫正方形的例子稍做變化重復執行次畫正方形開始畫正方形結束右轉度執行后,可以看到,畫出一個非常規整漂亮的組合圖案。 turtle圖形庫源于1966年誕生的Logo語言,是入門Python的有趣工具。因其簡單便捷的圖形化方法、和立即反饋式的繪畫效果,成為眾多編程入門者的首選。相對于大多數入門教材中枯燥的語法學習,和函數、方法的演練來說,turtle的趣味性顯得別具一格、極富效...
摘要:為啥你天天刷抖音一點都不煩,因為你覺得視頻好看你有興趣啊。比如我們說你玩是不是要開始搭建一個自己的網站,是不是可以自己寫一個小的腳本來自動發消息給你的女朋友等等,通過這樣的小例子來慢慢的培養自己的學習的興趣。學習,切勿貪快貪多。 大家好,我是菜鳥哥! 周末啦,跟大家聊一下我們粉絲團的情況...
摘要:準備工作在這里,我們登錄微信獲取好友信息,使用的是模塊處理并生成最終的圖像借助模塊。生成微信好友墻制作微信好友墻,就像以前的大字報,把我們下載的好友頭像逐一貼上去即可。首先設定好微信好友墻的尺寸,使用方法。 目錄:0 引言1 環境2 代碼實現3 后記 0 引言 前段時間,微信朋友圈開始出現了一種曬照片新形式,微信好友墻,即在一張大圖片中展示出自己的所有微信好友的頭像。 效果如下圖,出于...
人生苦短,我用Python 開發環境搭建安裝 Python驗證是否安裝成功安裝Pycharm配置pycharm 編碼規范基本語法規則保留字單行注釋多行注釋行與縮進多行語句數據類型空行等待用戶輸入print輸出 運算符算術運算符邏輯運算符成員運算符身份運算符運算符優先級 字符串訪問字符串中的值字符串更新合并連接字符串刪除空白startswith()方法endswith()方法字符串格式化...
摘要:前言本篇主要介紹基本數據類型,以文本進度條為例,介紹庫的使用。 前言 本篇主要介紹基本數據類型,以文本進度條為例,介紹time庫的使用。 并在最后對蟒蛇繪制的代碼進...
閱讀 2054·2021-10-08 10:04
閱讀 3079·2021-09-22 10:02
閱讀 2225·2019-08-30 15:56
閱讀 825·2019-08-30 15:54
閱讀 921·2019-08-30 15:54
閱讀 1275·2019-08-30 15:53
閱讀 2508·2019-08-30 11:21
閱讀 3556·2019-08-30 10:56