字典的使用習題練習

2022-03-05 14:09:03 字數 3126 閱讀 1046

1.定義乙個函式,該函式可以實現在內部輸入乙個資訊,如何該資訊不能轉換為正整數,則重新輸入,直到能轉換為正整數,則對外返回轉換的正整數

**:def intnum():

while true:

num = input('請輸入乙個資訊')

if num[0] == '-' or num.isdigit() or num.count('.')==1 and num.replace(".", '').isdigit():

if eval(num)>0:

return round(eval(num),0)

if eval(num)<0:

return abs(round(eval(num),0))

print(intnum())

2.定義乙個函式,該函式可以實現在內部輸入乙個資訊,如何該資訊不能轉換為負整數,則重新輸入,直到能轉換為負整數,則對外返回轉換的負整數

**:def fintnum():

while true:

num = input('請輸入乙個資訊')

if num[0] == '-' or num.isdigit() or num.count('.') == 1 and num.replace(".", '').isdigit():

if eval(num) > 0:

return 0-round(eval(num), 0)

if eval(num) < 0:

return round(eval(num), 0)

print(fintnum())

3.定義乙個函式,實現外界傳入乙個資訊,內部判斷是否能被轉換為正整數,返回true | flase資訊

**:def testfint(num):

num = str(num)

if num[0] == '-' or num.isdigit() or num.count('.') == 1 and num.replace(".", '').isdigit():

return true

else:

return false

print(testfint(-36))

print(testfint('fas1.3'))

print(testfint('2313'))

4.定義乙個函式,實現外界傳入乙個資訊,內部判斷是否能被轉換為負整數,返回true | flase資訊

**:def testfint(num):

num = str(num)

if num[0] == '-' or num.isdigit() or num.count('.') == 1 and num.replace(".", '').isdigit():

return true

else:

return false

print(testfint('-1213'))

print(testfint('fasf1.3'))

5.定義乙個函式,實現傳入乙個整型數字,判斷並直接列印該數字是否是奇數還是偶數

**:def printnum(num):

num = str(num)

if num[0] == '-' or num.isdigit() or num.count('.') == 1 and num.replace(".", '').isdigit():

if eval(num)%2==0:

print('該數是偶數!')

elif eval(num)%2==1:

print('該數是奇數!')

else:

print('該數既不是偶數也不是奇數!')

printnum(-99)

6.寫函式,檢查傳入列表的長度,如果大於2,那麼僅保留前兩個長度的內容,並將新內容返回給呼叫者。

**:def listtwo(list):

if len(list)>2:

return list[:2]

else:

return list

list = ['asf','afasf','asfsdafd']

print(listtwo(list))

7.寫函式,檢查獲取傳入列表或元組物件的所有奇數字索引對應的元素,並將其作為新列表返回給呼叫者。

**:def oddnum(list1):

a = list(list1)

i=0list2 =

while i < len(a):

if (i+1)%2 == 1 :

i+=1

return list2

a = ['fas',131,'fa','ag',13,'46as']

print(oddnum(a))

8.定義乙個函式,只要傳入 "k1:v1,...,kn:vn" 這樣固定格式的字串,都可以將其轉換為 這樣的字典並返回

def return_dirc(str):

list1 = str.split(',')

dirc = {}

for i in range(len(list1)):

split = list1[i].split(':')

dirc[split[0]] = split[1]

return dirc

print(return_dirc('k:21,l:1231:564f,56:fsdf'))

9.簡單購物車,要求如下 (可以用函式也可以不用):

實現列印商品詳細資訊,使用者輸入商品名和購買個數,則將商品名,**,購買個數加入購物列表,如果輸入為空或其他非法輸入則要求使用者重新輸入,購買成功後列印新增到購物車裡的資訊.

msg_dic=

**:msg_dic=

list =

while true:

value = msg_dic.values()

for i in msg_dic:

print(f'name: price:')

name = input('商品:>>')

sum = input('購買個數:>>')

if name in msg_dic and sum.isdigit():

else:

continue

print(list)

python 字典練習題

標準的字典資料 dict 1 兩字典相加 one dict two list 兩個字典相加 合併為 第三個字典 one dict.update two list print one dict 修改字典 修改字典 one dict age 10 print one dict age 等同於 print...

pyhthon字典練習題

有如下集合 11,22,33,44,55,66,77,88,99 將所有大於55的值儲存至第乙個key值中,將所有小於55的值儲存至第二個key值中。方法一 li 11,22,33,44,55,66,77,88,99 dic 定義乙個空的字典 for i in li 設定乙個迴圈 if i 66 設...

python 字典的綜合練習題

數字重複統計 1 隨機生成1000個整數 2 數字的範圍 20,100 3 公升序輸出所有不同的數字及其每個數字重複的次數 import random all nums 定義空列表儲存數字 for item in range 1000 20,100 print all nums sorted num...