編程和練武功一樣,拳不離口,曲不離手,不經常寫,手就會生,而且Python的技巧和方法特別多,很瑣碎,如果是新手很容易忘記,只有通過大量的練手才能熟悉掌握!明天就要上班了,我為大家準備了一道Python熱身菜,希望大家動手敲敲,快速恢復功力!
01.將陣列中的奇數進行排序
將一個陣列里面的奇數的數進行重新排列,0不是奇數
例子:sort_array([5,3,2,8,1,4])==[1,3,2,8,5,4]
1).小白解法:

2).熟手解法:

3).大神解法
巧妙的利用推導串列和串列里面的pop,一箭雙雕,另外注意“不管你是為了Python就業還是興趣愛好,記住:專案開發經驗永遠是核心,如果你缺新專案練習或者沒有python精講教程,可以去小編的Python交流.裙 :七衣衣九七七巴而五(數字的諧音)轉換下可以找到了,里面很多新教程專案,還可以跟老司機交流討教!”

02.判斷密碼PIN code
ATM機允許4或者6位數字,但是這4位或者6位只能是純數字
比如:
validate_pin('1234')==True
validate_pin('12345')==False
validate_pin('a234')==False
validate_pin('-1.234')==False
1).小白解法

2).高手解法
defvalidate_pin(pin):
returnlen(pin) in(4,6) andpin.isdigit()
validate_pin('-1.234')
為啥高手的解法總是這么飄逸,簡潔,感覺像是高手對戰,一招制敵!
03.玩一玩字串
給你幾個字串,按照下面的規則撰寫一個函式輸出,指定格式的字串:
accm("abcd") #A-Bb-Ccc-Dddd
accm("RqaEzty") #R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy
accm("cwAt") # C-Ww-Aaa-Tttt
1).小白解法

2).大牛解法
defaccm(chars):
return'-'.join(c.upper+c.lower()*i fori inenumerate(chars))
(代碼可以左右滑動)
04.推導一個陣列
給你陣列的前三個數字后一個數字是前3個數字之和,要求回傳前n個數字
1).小白解法:

2).熟手解法,用閉包+生成器來搞定

3).大牛解法
巧妙的利用了串列的切片和負數index
def tri2(nums_list,n):
res=nums_list[:n]
fori in range(n-3):
res.append(sum(res[-3:]))
returnres
tri2([0,0,1],10)
05.字符天平秤
每個問號(?)的權重是3,每個感嘆號(!)的權重是2,把兩個字符放左邊,把兩個字符放右邊,看看它們是否平衡?
Example:
balance("!!","??")=="Right"
balance("!??","?!!")=="Left"
balance("!?!!","?!?")=="Left"
balance("!!???!????","??!!?!!!!!!!")=="Balance"
1).小白的解法:

2).大神解法
這個三目運算,讓我一個大寫的佩字
以上題目都是來自小密圈的小伙伴的刷題中的一小部分,另外注意:不管你是為了Python就業還是興趣愛好,記住:專案開發經驗永遠是核心,如果你缺新專案練習或者沒有python精講教程,可以去小編的Python交流.裙 :七衣衣九七七巴而五(數字的諧音)轉換下可以找到了,里面很多新教程專案,還可以跟老司機交流討教!
本文的文字及圖片來源于網路加上自己的想法,僅供學習、交流使用,不具有任何商業用途,著作權歸原作者所有,如有問題請及時聯系我們以作處理,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/164452.html
標籤:Python
