1. 程式人生 > 實用技巧 >Python基礎學習 Three

Python基礎學習 Three

python學習 Day3

列表

name = [1,2,3,4,5,6,7,8,9]
print(name[4])          #輸出4
print(name[0:4])        #輸出[1, 2, 3, 4]
print(name[-1])         #輸出9
print(name[-3:-1])      #輸出[7, 8]
print(name[-3:])        #輸出[7, 8, 9]
print(name[0:8:2])      #輸出[1, 3, 5, 7]

name.append(10)         #在尾部追加10
name.insert(2,"yzd
") #在下邊為2出,插入yzd,輸出為[1, 2, 'yzd', 3, 4, 5, 6, 7, 8, 9, 10] name[2] = "zzz" #修改下標為2的值為zzz name.pop(1) #刪除下標為1的值 name.remove("1") #刪除值為1的物件 del name[1] #刪除下標為1的值 print(name.index("yzd")) #顯示yzd所在的下標的值 print(name[name.index("yzd")]) #顯示yzd name.clear() #
清空列表 name.reverse() #翻轉 name.sort() #排序,以ascall排序 name2 = ["yzd","zzz","kkk"] name.extend(name2) #name表與name2表合併

字串的全部方法解析

name = 'yzd'
print(name.capitalize())     #capitalize為首字母大寫的方法
print(name.count('y'))       #count為統計後面值的個數
print(name.center(50,'-'))   #
列印50個字元,不夠的用-補上 print(name.endswith('z')) #判斷name是否以‘z’結尾 name = 'my \t yzd' print(name.expandtabs(tabsize=30)) 輸出為:my yzd print(name[name.find("yzd"):]) #字串切片name.find("yzd")--->查詢yzd所在的下標 #name[name.find("yzd"):]----->等於name[4:]----->單獨取出yzd及後面的全部 print(name.rfind('y')) #輸出最右邊的y的下標 name2 = 'my name is {name} , i am {year} old' print(name2.format(name='yzd',year='24')) #format方法的使用 輸出---->my name is yzd , i am 24 old print(name2.format_map({'name':'yzd','year':24})) #format_map方法使用 print(name.isalnum()) #判斷name的值是否為阿拉伯字元 print(name.isalpha()) #判斷是否為純英文字元 print(name.isdecimal()) #判斷是否為十進位制的數 print(name.isdigit()) #判斷是否為整數 print(name.isidentifier()) #判斷是否為合法的變數名 print(name.istitle()) #是否為首字母大寫 print(name.isupper()) #是否為全部大寫 print('+'.join(['1','2','3'])) #將列表輸出為字串格式 print(name.ljust(50,'*')) #用*補全到50字串長度 print(name.rjust(50,'-')) #用-在前部補齊到50字串長度 print(name.lower()) #大寫變小寫 print(name.upper()) #小寫變大寫 print(name.strip()) #去兩邊的空格和回車 print(name.lstrip()) #去左邊的空格和回車 print(name.rstrip()) #去右邊的空格和回車 p = str.maketrans('abcdefg','1234567') print('bbg'.translate(p)) 輸出為---->227----->b對應2 g對應7 print('yzd yu'.replace('u','U')) #把u替換成U print('yzd yu'.replace('y','Y',1)) #只需要換一個y為Y print(name.split()) #以空格把name的值分為列表 print(name.split('y')) #以y把name的值分為列表 print('1+2\n3+4'.splitlines()) #按照換行符來存為列表 print(name.swapcase()) #大寫變小寫,小寫變大寫

商城作業練習

作業:
商城作業
#!/usr/bin/env python
product_list = [                               #定義商城列表
    ('iphone', 5800),
    ('Mac pro', 9800),
    ('Bike', 3800),
    ('Watch', 4800),
    ('Book', 31),
]
shopping_list = []                            #定於購物車的空列表
salary = input("input your salary: ")
if salary.isdigit():                          #.isdigit表示salary為數字
    salary = int(salary)                      #強制定義salary為int型別
    while True:
        for item in product_list:
            print(product_list.index(item),item)
        user_choice = input("which you buy?>>>:")
        if user_choice.isdigit():
            user_choice = int(user_choice)
            if user_choice < len(product_list) and user_choice > -1:
                p_item =product_list[user_choice]
                if p_item[1] <= salary:   #can buy
                    shopping_list.append(p_item)
                    salary -= p_item[1]
                    print('Add %s,your money %s'%(p_item,salary))
                else:
                    print('you money only %s',(salary))
            else:
                print("this product code %s not this"%user_choice)
        elif user_choice == 'q':
            print('---------shooping list---------')
            for p in shopping_list:
                print(p)
            print("your money %s"%salary)
            exit()
        else:
            print("invalid option")