久久99热66热这里只有精品,特黄特色的大片在线观看,亚洲日本三级在线观看,国产三级农村妇女在线,亚洲av毛片免费在线观看,哺乳叫自慰在线看,天天干美女av网

Python list(列表)實踐 -電腦資料

電腦資料 時間:2019-01-01 我要投稿
【m.dameics.com - 電腦資料】

    列表常用操作:

    1.先創(chuàng)建個商品列表

    >>> product = ['iPhone','Xiaomi','Meizu']

    2.打印列表

    >>> product

    ['iPhone', 'Xiaomi', 'Meizu']

    3.追加一個元素

    >>> product.append('Samsung')

    >>> product

    ['iPhone', 'Xiaomi', 'Meizu', 'Samsung']

    4.統(tǒng)計元素在列表中出現(xiàn)的次數(shù)

    >>> product.count('Xiaomi')

    1

    5.查找元素索引位置

    >>> product.index('Meizu')

    2

    6.在執(zhí)行位置插入元素

    >>> product.insert(2,'ZTE')

    >>> product

    ['iPhone', 'Xiaomi', 'ZTE', 'Meizu', 'Samsung']

    7.刪除執(zhí)行位置索引元素,不加索引,默認(rèn)刪除最后一個元素

    >>> product.pop(2)

    'ZTE'

    >>> product

    ['iPhone', 'Xiaomi', 'Meizu', 'Samsung']

    8.刪除列表中元素為三星的第一個元素

    >>> product.remove('Samsung')

    >>> product

    ['iPhone', 'Xiaomi', 'Meizu']

    9.列表元素排序

    >>> product.sort()

    >>> product

    ['Meizu', 'Xiaomi', 'iPhone']

    >>> product.reverse()

    >>> product

    ['iPhone', 'Xiaomi', 'Meizu']

    再創(chuàng)建一個價格列表:

    >>> prices = ['5000','2000','1500']

    以上兩個列表,就可以通過商品名稱獲取到價格,因為他們索引位置是對應(yīng)的,

Python list(列表)實踐

。

    例如:

    >>> prices[product.index('iPhone')]

    '5000'

    由此可見,可以通過一個for循環(huán),可以分別打印商品信息:

    >>> for i in product:

    ... print i,prices[product.index(i)]

    ...

    iPhone 5000

    Xiaomi 2000

    Meizu 1500

    結(jié)合以上列表基本使用,寫出下面這個實例:

    用戶輸入工資金額,選擇購買的商品(金額不夠買的商品,做出提示)

    購買后商品先加入購物車,最后輸出都買了什么商品

    創(chuàng)建個測試文本,也可以直接寫到列表里面:

    # cat shop.txt

    iPhone 5000

    Xiaomi 2000

    Meizu 1500

   

# vi shop_list.py#!/usr/bin/env python# coding:utf8import sysf = open('shop.txt')product = []prices = []shop_list = []flag = 0     #標(biāo)記flag2 = 0for line in f.readlines():    new_line = line.split()    product.append(new_line[0])  #循環(huán)將第一個索引位置值追加列表product    prices.append(int(new_line[1]))  #循環(huán)第二個索引位置值追加列表prices#print product,'\n',priceswhile True:    for pp in product:        if flag2 != 1:print pp,'\t',prices[product.index(pp)]   #判斷下面flag2變量值,是否打印商品信息    while True:        try:            if flag == 1:   #判斷上次執(zhí)行情況,如果已經(jīng)執(zhí)行,就不再提示輸入工資                break            else:                salary = int(raw_input('請輸入您的工資: '))                break        except Exception:            print "工資只能輸入數(shù)字!"    if salary < min(prices):   #內(nèi)置函數(shù)min()判斷列表中最小值        print "對不起,您的工資買不起任何商品!"        break    choise_product = raw_input('請輸入您要購買的商品名稱: ').strip()  #strip()函數(shù)去空格    if choise_product in product:        product_prices = prices[product.index(choise_product)]   #通過輸入的商品位置來找到商品價格        if salary >= product_prices:            print "您已成功購買%s,并加入購物車." %choise_product            shop_list.append(choise_product)            salary = salary - product_prices  #工資減去現(xiàn)在商品的價格            if salary < min(prices):     #判斷當(dāng)前剩余工資是否小于最低價的商品                print "對不起,剩余%d元,已買不起任何商品!" %salary                print "購物車:%s" %shop_list                sys.exit()            else:                print "您還剩余%d元,還可以購買以下商品: " %salary                for product_prices in prices:                    if  product_prices <= salary:  #打印剩余的錢數(shù)小于或等于列表的元素                        print product[prices.index(product_prices)],'\t',product_prices                flag = 1    #用于判斷是否執(zhí)行上面命令,不再下次提示輸入工資,

電腦資料

Python list(列表)實踐》(http://m.dameics.com)。以下flag都是如此 flag2 = 1 #用于判斷是否執(zhí)行上面命令,如果執(zhí)行,就不再打印商品信息 else: print "您的工資買不起%s! 請重新選擇商品:" %choise_product flag = 1 else: print '\033[31;1m沒有您要的商品! 請重新選擇: \033[0m' flag = 1 flag2 = 2 #非1都可以。如果等于1,第二次輸入購買的商品名稱錯誤,將不打印商品信息,因為flag2變量已經(jīng)在上面賦值了1

最新文章