您好,登錄后才能下訂單哦!
這篇文章主要介紹“python練習題有哪些”,在日常操作中,相信很多人在python練習題有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”python練習題有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1. 基礎知識點補充
join() 把一個列表轉換成字符串;
split() 切割. 把字符串變成列表。
刪除問題.
list和dict
list刪除在循環的時候不能直接刪除的;
dict在循環的時候不要改變大小.;
需要把要刪除的內容保存在一個列表中. 循環這個列表刪除老列表。
fromkeys(a, b) 把a中的每一個元素獲取到和b組裝成一個新字典返回。
2. set集合: 不重復, 無序, 內容必須可哈希(不可變)。
3. 深淺拷貝
1. 賦值: 沒有創建新對象. 兩個變量指向同一個對象;
2. 淺拷貝: 拷貝第一層內容. 創建了新對象 [:] copy();
3. 深拷貝: 拷貝所有和當前對象相關聯的內. deepcopy()。
練習題
1.判斷一個數是否是水仙花數,水仙花數是一個三位數,三位數的每一位的三次方的和還等于這數.那這個數就是一個水仙花數,例如:153=1*3+5**3+3**3
方法一:
#方法一
while 1:
a = int(input("輸入數字"))
if len(str(a)) == 3:
if (a // 100)** 3 + (a % 100 // 10) ** 3 + (a % 10) ** 3 == a :
print("%d是水仙花數"%a)
else:
print("不是水仙花數")
else:
print("請重新輸入一個三位數")
continue
方法二
str = input("請輸入數字")
s = 0
for c in str:
s += int(c)**3
if s == int(str):
print("是水仙花數")
else:
print("不是水仙花數")
2.完成彩票36選7的功能.從1到36數中隨機的產生7個數、最終獲取到7個不重復的數據作為最終的開獎結果
隨機數:
from random import
randint randint(0,20)#0-20的隨機數
#生成無重復的隨機數
from random import randint
b = set()
while len(b) < 7:
a = randint(1, 36)
b.add(a)
print(b)
3.給出一個純數字列表.請對列表進行排序(升級題)…
思路:
完成a和b的數據交換。例如,a=10,b=24交換之后,a=24,b=10循環列表。判斷a]和ali+1]之間的大小關系,如果al比ali+1]大.則進行互換。
循環結束的時候.當前列表中最大的數據就會被移動到最右端.
想一想,如果再次執行一次上面的操作。最終第二大的數據就移動到了右端.以此類推.如果反復的進行執行相應的操作,那這個列表就變成了一個有序列表!
方法一:冒泡排序法
ls = [1,2,34,14,43,32,3,2,3,42,424,24,41,4]
count = 0
while count < len(ls):
i = 0
while i < len(ls) -1-count: #優化了,減少不必要的循環
if ls[i] > ls[i+1]:
ls[i],ls[i+1] = ls[i+1],ls[i]
i += 1
count += 1
print(ls)
方法二
s = set()
while 1:
a = input("輸入數字")
if a == 'q':
break
else:
s.add(int(a))
lst = list(s)#創建無重復列表
print(lst)
for i in range(len(lst)-1):
for j in range(i+1,len(lst)):
if lst[i] > lst[j]:
lst[i],lst[j] = lst[j],lst[i]
print(lst)
到此,關于“python練習題有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。