成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

3道趣味Python題,非常適合菜鳥練手

開發 后端
Python雖然入門容易,但是涉及的知識點非常多,而且技巧性很強!這些技巧就像一串一串的珠子,需要一些題目的不斷的練手才能熟練掌握串聯起來,把知識點掌握牢固!今天我就精選了3道趣味的Python題目,大家一起動動手,練起來!

Python雖然入門容易,但是涉及的知識點非常多,而且技巧性很強!這些技巧就像一串一串的珠子,需要一些題目的不斷的練手才能熟練掌握串聯起來,把知識點掌握牢固!今天我就精選了3道趣味的Python題目,大家一起動動手,練起來!  

3道趣味Python題,非常適合菜鳥練手

1.字符串中的字符替換

字符串是Python中最基本也是最重要的知識點,下面這道題是關于字符串替換。看看菜鳥和高手是如何處理的:

題目:

創建一個函數,這個函數能把輸入的字符串進行處理,并將返回替換了某些字符的字符串,規則如下

  • 如果一個字母是大寫輔音,請將該字符替換為“Iron”。
  • 如果字母是小寫輔音或非字母字符,則對該字符不執行任何操作
  • 如果一個字母是大寫元音,請將該字符替換為“Iron Yard”。
  • 如果一個字母是小寫元音,請用“Yard”替換該字符。

測試用例

輸入: "Hello WORLD!"

輸出: "IronYardllYard IronIron YardIronIronIron!"

菜鳥解法:

高手解法: 

  1. def tiy_fizz_buzz(s): 
  2.    return "".join(("Iron "*c.isupper() + "Yard"*(c.lower() in "aeiou")).strip() or c for c in s) 

(代碼可以左右滑動)

點評:

高手解法最巧妙不是用類似推到列表這樣的方法來循環處理字符串,而且非常巧妙的用"Iron"*True 或者"Iron"*False,如果是前者則為字符串本身,而后者則為空""。然后在把兩個字符串用+合成,再用or分類!***把上面的if-elif-elif-else融合到了一行代碼里面,確實不錯!

2.趣味體重排序

老王在一個"胖子健身俱樂部",每到月底老王就很擔心,因為每個月都會公布一份成員體重列表,每個月他都是列表中的***一個,這意味著他是最重的。于是他就建議會長修改規則,比如新的規則如下:

新的排序規則將是按照“權重”來進行排序,如果權重相同,則按照體重字符串來進行排序。(權重的計算規則:體重數字不同位數上的數字的總和)

給定某種正常順序俱樂部的成員的體重字符串,如何實現按照新規則排序呢?測試用例: 輸入: "99 189 86 75" 輸出: "75 86 189 99"

菜鳥解法:

 

高手解法:

點評:

高手的解法同樣是比較簡潔!我們大部分人用for c in x 的時候都用到這一層就結束了,其實還可以對c再進行進一步操作然后再sum一下,這個例子可以舉一反三!一下子集合了很多sorted的高級用法,簡潔而有效!

3.扔骰子游戲

用五個六面骰子玩的骰子游戲,每投骰子組一次,就會出現5個數字的數組(數字:1-6),統計數組里每個數字出現的次數,將每個數字出現的次數拆分成 3次 和 1次 的組合,然后按照下面的規則進行計數。注意:如果出現次數大于或者等于3次,那么必須至少有一個按照3次來計算,不能全部按照1次來計算

3次1 = = 1000分   3次6 = = 600分   3次5 = = 500分   3次4 = = 400分   3次3 = = 300分   3次2 = = 200分  1次1 => 100分   1次5 => 50分  1次2 => 0分  1次3 => 0分  1次4 => 0分  1次6 => 0分

例如,5出現了5次,那么應當做作3個5、1個5和1個5來計算得分;5出現了6次,那么應當作3個5、3個5來計算得分,其他數字同理。

測試用例: 扔骰子計算得分 --------- ------------------

5 1 3 4 1 50 + 2 * 100 = 250  1 1 1 3 1 1000 + 100 = 1100  2 4 4 5 4 400 + 50 = 450

菜鳥解法: 

高手解法:

點評:

高手的解法在于設計的數據結構非常巧,提前根據題目的意思就設計好了幾個容器,然后counter列表巧妙的將(1-6)與(1-6)出現的次數關聯起來。points和extra列表巧妙將數字出現的次數(3次和1次)和得分關聯表示,減少誤輸得分的情況,提高代碼復用性,整個解法非常巧妙! 

責任編輯:龐桂玉 來源: 菜鳥學Python
相關推薦

2022-07-22 09:55:02

Python練手題

2018-05-09 00:10:18

Python 項目編程語言

2009-06-22 13:41:58

FaceletsJSF組件

2009-09-17 11:39:16

OSGi服務

2019-08-30 15:14:55

Python開發工具

2021-06-03 18:42:26

Redis集群故障

2024-12-30 09:55:00

AI數據模型

2020-03-30 17:50:50

存儲閃存技術

2022-09-15 15:23:30

通信400-MHz

2010-05-31 10:43:52

李彥宏

2018-05-07 08:29:56

機器學習開源適合

2022-09-02 14:46:45

區塊鏈編程語言開發

2009-03-10 10:06:33

面試題筆試題微軟

2021-10-28 17:40:22

Nest.js前端代碼

2018-05-08 15:20:00

python技術編程語言

2020-10-16 16:20:00

開源開發管理系統

2020-01-13 14:04:33

開發技能代碼

2019-08-29 09:57:24

Python系統編程

2017-04-06 16:20:27

Python趣味代碼編程

2020-08-21 10:25:02

PythonWget
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产欧美精品区一区二区三区 | 国产精品视频区 | av网站在线看 | 亚洲成人中文字幕 | 鲁一鲁资源影视 | 日本久久久久久 | 91在线视频播放 | 黄色一级大片在线观看 | 亚洲精品大全 | 拍真实国产伦偷精品 | av天天澡天天爽天天av | 在线观看中文字幕dvd播放 | 日韩波多野结衣 | 亚洲国产高清高潮精品美女 | 久久精品亚洲欧美日韩久久 | 亚洲一区二区三区免费在线观看 | 欧美激情久久久 | 91不卡 | 天天插天天操 | 久久国产精品久久 | 国产一区2区 | 久久国产精品免费一区二区三区 | 日韩一级精品视频在线观看 | 成人欧美一区二区三区在线播放 | 福利久久 | 亚洲一区二区三区免费在线观看 | 91久久国产综合久久 | 亚洲激精日韩激精欧美精品 | 第一av | 韩日一区二区三区 | 国产成人精品一区二区三区四区 | 国产精品成人一区二区三区吃奶 | 国产一区二 | 一区二区三区亚洲视频 | 色播99 | 欧美三区| 国产av毛片 | 国产第一区二区 | 欧美精品在线免费观看 | 青青草av在线播放 | 亚洲精久久久 |