天天看點

16道關于Python基礎方面的練習題

寫入到本地一個txt檔案,内容格式如下:

1.打開檔案

2.循環清單,提取字典

3.提取key,value

4.寫入檔案

如何得出

1.a、b兩個清單長度一緻,擷取長度

2.一個for循環,每次擷取同下标值

3.字元串拼接,添加到c清單

控制台輸入郵箱位址(格式為 [email protected]), 程式識别使用者名和公司名後,将使用者名和公司名輸出到控制台。

1.校驗輸入内容是否符合規範([email protected]), 如是進入下一步,如否則抛出提 示"incorrect email format"。注意必須以.com 結尾

2.可以循環“輸入–輸出判斷結果”這整個過程

3.按字母 Q(不區分大小寫)退出循環,結束程式

1.固定以.com結尾,用正則比對

2.以 @ 和 . 分割字元串

3.提取username和companyname

例如:<code>153 = 1^3 + 5^3 + 3^3</code>,是以 153 就是一個水仙花數

那麼問題來了,求1000以内的水仙花數(3位數)

1.int轉字元串序列,擷取到每一位數

2.調用math.pow函數求立方和

3.三個數字立方和相加

1.外層循環,擷取被乘數

2.内層循環,擷取乘數

問題1.對清單a 中的數字從小到大排序

問題2.排序後去除重複的數字

1.非算法方案

内置排序函數

内置去重函數

内置清單函數

2.算法方案

冒泡算發排序

1.如何讓它反轉成<code>[11,7,5,3,1]</code>

2.取到奇數位值的數字,如<code>[1,5,11]</code>

問題一:非算法方案

直接調用内置函數或切片

問題一:算法方案

for循環,循環次數取清單長度的一半

頭尾對稱位置的值互換

問題二

切片,設定步長

例如[1,2,0,2,1],[1,2,3,3,2,1]這樣的都是對稱數組

用Python代碼判斷,是對稱數組列印True,不是列印False

如:

循環取值,循環次數隻需要清單長度的一半

每次取頭尾對稱下标的值比較

求滿足規律的 100 以内的是以資料

初始化清單[1,1]

循環,從第三個下标開始的值都等于前一位的值+前前一位的值

若新的值已大于100則跳出循環

清單生成式 + 三元表達式

例如:

6是完全數,<code>*</code>因為6 = 1+2+3;

下一個完全數是28 = 14+7+4+2+1。

求1000以下的完全數

1.外循環6-1000以内的數字

2.内循環目前數字,得到所有整除數,并添加到一個清單

3.清單求和比較目前數字是否一緻

比如

1.循環清單

2.調用清單内置統計函數計算目前元素出現次數

3.出現次數模2是否不等于0

字元串也是序列,可以循環擷取每個字元

調用字元串内置函數判斷是否大寫

參數為[1, 2, 3, 4]

結果計算方法為[1, 1 + 2, 1 + 2 + 3, 1 + 2 + 3 + 4]

傳回結果就應該是[1, 3, 6, 10]

1.外循環擷取清單每個元素

2.内循環擷取目前元素and 之前的所有元素,最後相加

3.為了不影響原清單的值,需要新建立一個清單來存放相加後的值

規則如下

1、該字元串必須全部都是數字。

2、該字元串長度為11位。

3、該字元必須以數字1開頭。

正則比對,有則True,無則False

第一個參數給出一個源,

第二個參數是指定範圍。

要求該函數将 第一個參數裡面的字元串中 落在第二個參數指定範圍内的字元串替換為 # 号

1.先将指定範圍的字母提取出來

2.Python裡面,字元是可以直接比較大小的

3.通過直接比較,将在指定範圍的字元 replace 成 #

Python基礎入門教程推薦:更多Python視訊教程-關注B站:Python學習者

https://www.bilibili.com/video/BV1LL4y1h7ny?share_source=copy_web

Python爬蟲案例教程推薦:更多Python視訊教程-關注B站:Python學習者

https://www.bilibili.com/video/BV1QZ4y1N7YA?share_source=copy_web