1. 程式人生 > 實用技巧 >Redis 設計與實現 4:字典

Redis 設計與實現 4:字典

1. 有列表['alex',49,[1900,3,18]],分別取出列表中的名字,年齡,出生的年,月,日賦值給不同的變數

l = ['alex', 49, [1900, 3, 18]]
name = l[0]
age = l[1]
age_year = l[2][0]
age_month = l[2][1]
age_day = l[2][2]
name, age, date = l
year, month, day = date
print('name:', name, 'age:', age, 'date:', year, month, day)

2. 用列表的insert與pop方法模擬佇列

#
FIFO:先進先出 l = [] for i in range(4): l.insert(i,i) print(l) for i in l: l.pop(0) print(l) l.pop(0) print(l)

3. 用列表的insert與pop方法模擬堆疊

# IFO:後進先出
l = []
for i in range(4):
    l.insert(i,i)
    print(l)
for i in l:
    l.pop()
    print(l)
l.pop()
print(l)

4. 簡單購物車,要求如下:

'''
實現列印商品詳細資訊,
使用者輸入商品名和購買個數,則將商品名,價格,購買個數以三元組形式加入購物列表,
如果輸入為空或其他非法輸入則要求使用者重新輸入
''' msg_dic={ 'apple':10, 'tesla':100000, 'mac':3000, 'lenovo':30000, 'chicken':10, } print(msg_dic) p = 0 list_name = [] list_num = [] list_price = [] while True: name = input('購買商品:').strip() #輸入股買商品 number = input('購買商品數量').strip() num = int(number) if name in msg_dic: # list_single = (name,msg_dic[name]*num,num)
list_name.append(name) list_num.append(num) list_price.append(msg_dic[name]) p += int(msg_dic[name]*num) ask = input('是否繼續購買:(Y or N)') if ask == 'Y': continue else: info = f''' name:{list_name} number:{list_num} s_price:{list_price} Total:{p} ''' print(info) else: print('商品輸入錯誤,請重新輸入') continue

5. 有如下值集合 [11,22,33,44,55,66,77,88,99,90...]

'''
將所有大於 66 的值儲存至字典的第一個key中,
將小於 66 的值儲存至第二個key的值中
即: {'k1': 大於66的所有值, 'k2': 小於66的所有值}
'''
l = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]
l1 = []
l2 = []
dic={}
for i in l:
    if i > 66:
        l1.append(i)
    elif i < 66:
        l2.append(i)
dic.update({'k1': l1, 'k2': l2})
print(dic)

6. 統計s='hello alex alex say hello sb sb'中每個單詞的個數

s='hello alex alex say hello sb sb'
print(s.count('hello'))
print(s.count('alex'))
print(s.count('say'))
print(s.count('sb'))