python自動化運維之路2


list列表

列表是我們最以后最常用的數據類型之一,通過列表可以對數據實現最方便的存儲、修改等操作

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_
# author:snate
name_list = ["alex","zhangdan","daxiaowen","jack"]
print(name_list[0])
print(name_list[1:3])  # 切片 左閉右開  顧頭不顧尾
print(name_list[0:3])
print(name_list[-1])
print(name_list[-2:-1])  # ['daxiaowen']
print(name_list[0:-1]) # ['alex', 'zhangdan', 'daxiaowen']
print(name_list[0:3:2])# ['alex', 'daxiaowen']
print(name_list.index("daxiaowen"))  # 2 查找某個元素所在的下標
name_list.append("gxw")   # 在末尾添加一個元素
name_list.insert(2,"nihao") # 在2的位置插入nihao

name_list[2]="張丹" # 修改元素的值

print(name_list)
name_list.append("daxiaowen")
print(name_list.count("daxiaowen"))  # 統計某個字符串出現的次數
print(len(name_list))  # 用函數len統計字符串的長度
print(name_list)
del name_list[2] # 刪除第三個元素
print(name_list)
# del name_list  # 刪除整個列表 print(name_list)
if "daxiaowen" in name_list: # 判斷某個元素是否在列表中
    print(name_list.index("daxiaowen"))
for i in name_list:   # 遍歷整理列表,
    print(i)
for index,element in enumerate(name_list): # 遍歷整個列表,下標一塊打印,使用enumerate函數
    print(index, element)

list對象的賦值、淺copy 和深copy

will = ["Will", 28, ["Python", "C#", "JavaScript"]]
wilber = will
print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]
will[0] = "Wilber"
will[2].append("CSS")
print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]

執行結果:

分析:

首先,創建了一個名為will的變量,這個變量指向一個list對象,從第一張圖中可以看到所有對象的地址(每次運行,結果可能不同)
然后,通過will變量對wilber變量進行賦值,那么wilber變量將指向will變量對應的對象(內存地址),也就是說”wilber is will”,”wilber[i] is will[i]”
可以理解為,Python中,對象的賦值都是進行對象引用(內存地址)傳遞
第三張圖中,由於will和wilber指向同一個對象,所以對will的任何修改都會體現在wilber上
這里需要注意的一點是,str是不可變類型,所以當修改的時候會替換舊的對象,產生一個新的地址39758496

淺copy

import copy
will = ["Will", 28, ["Python", "C#", "JavaScript"]]
wilber = copy.copy(will)

print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]

will[0] = "Wilber"
will[2].append("CSS")
print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]

  執行結果:

分析:

首先,依然使用一個will變量,指向一個list類型的對象
然后,通過copy模塊里面的淺拷貝函數copy(),對will指向的對象進行淺拷貝,然后淺拷貝生成的新對象賦值給wilber變量
淺拷貝會創建一個新的對象,這個例子中”wilber is not will”
但是,對於對象中的元素,淺拷貝就只會使用原始元素的引用(內存地址),也就是說”wilber[i] is will[i]”

當對will進行修改的時候
由於list的第一個元素是不可變類型,所以will對應的list的第一個元素會使用一個新的對象39758496
但是list的第三個元素是一個可變類型,修改操作不會產生新的對象,所以will的修改結果會相應的反應到wilber上

備注:使用下面的操作會產生淺copy的效果
使用切片[:]操作
使用工廠函數(如list/dir/set)
使用copy模塊中的copy()函數

深copy

import copy

will = ["Will", 28, ["Python", "C#", "JavaScript"]]
wilber = copy.deepcopy(will)

print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]

will[0] = "Wilber"
will[2].append("CSS")
print id(will)
print will
print [id(ele) for ele in will]
print id(wilber)
print wilber
print [id(ele) for ele in wilber]

分析:

首先,同樣使用一個will變量,指向一個list類型的對象
然后,通過copy模塊里面的深拷貝函數deepcopy(),對will指向的對象進行深拷貝,然后深拷貝生成的新對象賦值給wilber變量
跟淺拷貝類似,深拷貝也會創建一個新的對象,這個例子中”wilber is not will”
但是,對於對象中的元素,深拷貝都會重新生成一份(有特殊情況,下面會說明),而不是簡單的使用原始元素的引用(內存地址)
例子中will的第三個元素指向39737304,而wilber的第三個元素是一個全新的對象39773088,也就是說,”wilber[2] is not will[2]”

當對will進行修改的時候
由於list的第一個元素是不可變類型,所以will對應的list的第一個元素會使用一個新的對象39758496
但是list的第三個元素是一個可不類型,修改操作不會產生新的對象,但是由於”wilber[2] is not will[2]”,所以will的修改不會影響wilber

購物車:

ReadME:

這個一個關於購物車的程序
個人介紹
name:Gaoxuewu
nickName:snate
blog_addr:http://www.cnblogs.com/itlinux/p/5723060.html
功能介紹
fullShopping.py
輸入用戶名,登錄到電子商城,判斷用戶名在用戶文件中是否存在,存在讀取用戶工資,若不存在將完成購物, 退出系統時,將用戶的信息寫入到 用戶文件中。
用戶可以完成購物、修改購物車信息(添加和刪除購物車的商品)、結賬退出等操作。
從文件中讀取商品的種類和價格信息。
將購物車信息寫入到文件中。
Manger.py
從文件中讀取商品信息保存到字典中。
修改商品的價格,並寫回文件
環境依賴
python3.*
window/linux os
time
目錄結構
fullShopping
├── __init__.py
├── README.md # 程序介紹
├── fullShopping flowChart # 程序流程圖
├── user.txt # 用戶信息,包含用戶名和用戶的余額信息
├── Product_list.txt  # 商品信息,包含商品的編號,商品名稱和價格
├── Shopping_list.txt # 購物車信息 包含商品的名稱,購物商品的數量
├── fullShopping.py # 電子商城測試程序
      ├── ReadProductDic() # 將商品信息從文件中讀取,並保存到字典中
      ├── WriteShoppingProductFile(Shopping_Chart) # 將購買的商品以及商品的數量寫入到文件中
      ├── Exit_System() # 退出系統
      ├── BreakFlag() # 判斷是否需要繼續
      ├── ThroughProductDic(Product_list) #  遍歷商品列表
      ├── ThroughShoppingDic(Shopping_Chart) # 遍歷購物車字典
├── Manager.py # 管理員程序
      ├── ReadProductDic()  # 讀取商品信息到文件
      ├── ThroughShoppingDic(Shopping_Chart) # 保存商品信息到文件
運行說明
用戶程序
將文件拷貝到安裝好python3.*的系統環境中,執行python fullShopping.py即可。
管理員程序
將文件拷貝到安裝好python3.*的系統環境中,執行python Manger.py即可。

流程圖:購物車流程圖:

購物車1:

購物車購物、修改購物車、結賬退出。

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_
# author:snate
product_list =[("MyWatch",8000),
               ("NoteBook",3000),
               ("xiaoMiPhone",1500),
               ("apple",5)
               ]
shopping_list=[]
salary =int(input("請輸入您的工資:"))
print("==========product list=============")
while True:
    for index,product in enumerate(product_list):
        print(index,product_list[index][0],product_list[index][1])
    user_choice = input("請輸入您的選擇:")
    if user_choice.isdigit():
        user_choice = int(user_choice)
        if user_choice >=0 and user_choice <len(product_list):
            if product_list[user_choice][1]<salary:
                product = product_list[user_choice]
                salary -= product[1]
                shopping_list.append(product[0])
                print("added the \033[31;1m%s \033[0m to shopping chart!,your salary is \033[31;1m%s \033[0m" %(product[0],salary))
            else:
                print("您的余額為: \033[42;1m%s \033[0m,不足以支出此產品,買個毛線呀!" %salary)
        else:
            print("您輸入編號為\033[41;1m%s] \033[0的商品不存在,請重新輸入"% user_choice)
    elif user_choice == "q":
        print("============shopping list=====================")
        for product in shopping_list:
            print(product)
        print("您的余額為:\033[42;1m%s \033[0m"% salary)
        exit()
    else:
        print("invalid option")

  購物車2:

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_
# author:snate
def print_menu_table(): #  打印商品列表的表頭
    print("===========商品清單為:===================")
    menu_table = '''
                編號    商品名稱       商品價格
          '''
    print(menu_table)
def print_menu_list(menu_list): #  打印商品列表
     print_menu_table()
     for index,item in enumerate(menu_list):
        menu_dic[index] = menu_list[index];
        menu_info='''
                {id}      {name}       {price}
        '''.format(id=index,name=menu_list[index][0],price=menu_list[index][1])
        print(menu_info)
# 購物,並且將購買的商品加入到字典中,其中關鍵字商品的名稱及單價,value值為cnt
def shopping():
    your_balance=int(input("請輸入您的工資:"))
    while True:
        print_menu_list(menu_list)
        cnt = 0;#記錄商品的數量
        user_choice = input("請輸入您的商品編號:")
        if user_choice.isdigit():
            user_choice = int(user_choice)
            if user_choice >=0  and  user_choice < len(menu_list):
                if menu_list[user_choice][1] < your_balance:
                    shopping_product = menu_list[user_choice]
                    if shopping_product in shopping_dic:
                        shopping_dic[shopping_product] += 1
                        your_balance -= shopping_product[1]
                    else:
                        shopping_dic[shopping_product] = 1
                        your_balance -= shopping_product[1]
                    print("將商品[%s]加入到購物車,您的余額為:%s" % (shopping_product[0], your_balance))
                else:
                    print("您的余額為\033[31;1m%s\033[0m,不足以支出次商品,還買個屁呀!" % your_balance)
            else:
                print("您輸入\033[31;1m[%s]\033[0m不存在,請輸入輸入!" % user_choice)
        elif user_choice == "q":
            print("=============shopping list===============")
            print_shopping_list(shopping_dic)
            print("您的余額為:\033[31;1m[%s]\033[0m!" %your_balance)
            exit()
        else:
            print("invalid option")
# 購物,並且將購買的商品加入到字典中,其中關鍵字商品的名稱及單價,value值為cnt
def print_shopping_list(shopping_dic):
    print("\t\t商品編號\t\t商品名稱\t\t商品價格\t\t商品數量");
    for index,product in enumerate(shopping_dic):
        print("\t\t%s\t\t%s\t\t%s\t\t%s"% (index, product[0], product[1], shopping_dic[product]))

menu_list = [("ihone", 3800), ("notebook", 800), ("pen", 50), ("apple", 30)]
if __name__ == '__main__':
    menu_dic = {}
    shopping_dic = {}
    shopping()
    print_shopping_list(shopping_dic)

  購物車3:

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_
# author:snate
import time
# 將商品列表從文件中讀出,並寫入字典
def ReadProductDic():
    with open('Product_List.txt', 'r', encoding="utf-8") as f:
        for line in f.readlines():
            Product_Info = line.strip("\n").split(" ")
            # Index = int(Product_Info[0])
            Product_Name = Product_Info[1]
            Product_Price = Product_Info[2]
            Product_List[Product_Name] = int(Product_Price)
# 將購買的商品以及商品的數量寫入到文件中
def WriteShoppingProductFile(Shopping_Chart):
    with open('Shopping_list.txt', 'a', encoding="utf-8") as f:
        for index,Proudct_Name in enumerate(Shopping_Chart):
            Product_Str=""
            index = str(index)
            Prduct_Num = str(Shopping_Chart[Product_Name])
            Product_Str= Product_Str+index + " " + Product_Name + " "+ Prduct_Num
            f.writelines(Product_Str+"\n")
# 退出系統
def Exit_System():
    for i in  range(3):
        print('''\n\t\t謝謝使用電子購物商城,\033[34;1m%s\033[0m秒后,退出系統!''' %(3-i))
        time.sleep(1)
    exit()
# 判斷是否需要繼續
def BreakFlag():
    while True:
        Break_Flag = input('''\t\t您是否要繼續?(y/n)''')
        if  Break_Flag =="y" or Break_Flag == "n":
            return Break_Flag
        else:
            print("您的輸入有誤,請重新輸入")
# 遍歷 商品字典 輸入商品編號,商品的名稱 商品的價格
def ThroughProductDic(Product_list):
    for index, Product in enumerate(Product_list):
        Dic_key[index] = Product
        print(index,Product,Product_List[Product])
#   遍歷購物車字典,打印序號、商品名稱、商品的單價、商品的數量
def ThroughShoppingDic(Shopping_Chart):
    for index,name in enumerate(Shopping_Chart):
        Dic_key[index] = name
        print('''\n\t\t%s\t\t%s\t\t%s\t\t%s\t\t''' %(index,name,Product_List[name],Shopping_Chart[name]))
Dic_key = {}
Shopping_Chart = {}  # 保存購買的商品
# 商品列表
Product_List={}
ReadProductDic()
# 判斷工資標准
name=input('請輸入您的用戶名:')
print('''\n\t\t\t\t\033[31;5m歡迎%s來到電子商城\033[0m''' %name)
with open("user.txt",'r+',encoding='utf-8') as f:
    count = f.readlines().count(name)
    cnt = 0
    for line in f.readlines():
        line = line.strip("\n").split(" ")
        # 文件中可能存在多個用戶的余額信息,選取最后的余額
        if name == line[1]:
            cnt += 1
            if cnt == count:
                balance = line[2]
                break
    else:
        Balance = input("請輸入您的工資:")
        Balance = int(Balance)
while True:
    Break_Flag =''
    print('''\n\t請選擇您需要進行的操作:\n\t\t\t\t1.購物\n\t\t\t\t2.查看並修改購物車\n\t\t\t\t3.結賬並退出''')
    # 用來確定用戶的選擇
    while True:
        choose = input('''\n\t請輸入您的選擇''')
        if choose.isdigit():
            choose = int(choose)
            if choose >=4 or choose <= 0:
                print('''\n\t\t您的輸入有誤,請重新輸入,謝謝!''')
            else:
                break
        elif choose == "q":
            print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
            ThroughShoppingDic(Shopping_Chart)
            WriteShoppingProductFile(Shopping_Chart)
            print('''您的余額為:%s''' % Balance)
            Exit_System()
        else:
            print("invalid option")
    # 用戶的選擇為1,購物
    if choose == 1:
        while Break_Flag != 'n':
            ThroughProductDic(Product_List)
            User_Choose = input('''\t\t請輸入您要購買的商品的編號:''')
            if User_Choose.isdigit():
                User_Choose = int(User_Choose)
                if User_Choose >=0 and User_Choose<len(Dic_key):
                    Product_Name = Dic_key[User_Choose]
                    if Product_List[Product_Name]< Balance:
                        Balance -= Product_List[Product_Name]
                        print('''\t\t將商品\033[31;1m[%s]\033[0m加入到購物車!''' %Product_Name)
                        # 判斷商品是否在購物車中,如果在購物車中的數量加1,若果不在購物車中,
                        if Product_Name in Shopping_Chart:
                            Shopping_Chart[Product_Name] += 1
                        else:
                            Shopping_Chart[Product_Name] =1
                    else:
                        print('''\t\t您的余額不足,請重新輸入!''')
                else:
                    print('''\t\t您輸入的編號為\033[31;1m%s]\033[0m不存在'''% User_Choose)
            elif User_Choose == 'q':
                print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                ThroughShoppingDic(Shopping_Chart)
                WriteShoppingProductFile(Shopping_Chart)
                print('''您的余額為:%s''' % Balance)
                with open("user.txt", 'r+', encoding='utf-8') as f:
                    User_Info = name+ ""+str(Balance)
                    f.writelines(User_Info+"\n")
                Exit_System()
            else:
                print("invalid option")
            Break_Flag = BreakFlag()

    elif  choose == 2:
        while True:
            ThroughShoppingDic(Shopping_Chart)
            Shopping_Chart_Choose = input('''\t\t1.增加\n\t\t2.刪除\n\t\t3.結賬並退出\n\t\t4.返回\n\t\t請輸入您的選擇:''')
            if Shopping_Chart_Choose.isdigit():
                Shopping_Chart_Choose = int(Shopping_Chart_Choose)
                if Shopping_Chart_Choose<=0 or Shopping_Chart_Choose >= 5:
                    print('''您輸入編號為[%s]的操作不存在,請您重新輸入!''' % Shopping_Chart_Choose)
                else:
                    break
            elif  Shopping_Chart_Choose=="q":
                print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                ThroughShoppingDic(Shopping_Chart)
                WriteShoppingProductFile(Shopping_Chart)
                print('''您的余額為:%s''' % Balance)
                with open("user.txt", 'r+', encoding='utf-8') as f:

                    User_Info = name + "" + str(Balance)
                    f.writelines(User_Info + "\n")
                Exit_System()
            else:
                print("您的輸入有誤,請重新輸入")
        if Shopping_Chart_Choose == 1:
            while  Break_Flag != 'n':
                ThroughShoppingDic(Shopping_Chart)
                Add_Shoppping_Index = input('''\n\t\t請輸入您要增加商品的編號:''')
                if Add_Shoppping_Index.isdigit():
                    Add_Shoppping_Index = int(Add_Shoppping_Index)
                    if Add_Shoppping_Index>= 0 and Add_Shoppping_Index<len(Shopping_Chart):
                        Add_Product_Name = Dic_key[Add_Shoppping_Index]
                        while Break_Flag != 'n':
                            Add_Product_Num = input('''\t\t請輸入您要增加的商品數量:''')
                            if Add_Product_Num.isdigit():
                                Add_Product_Num = int(Add_Product_Num)
                                if Balance >= Product_List[Add_Product_Name]*Add_Product_Num:
                                    Shopping_Chart[Add_Product_Name] += Add_Product_Num
                                    Balance -= Product_List[Add_Product_Name]*Add_Product_Num
                                else:
                                    print('''\t\t您的余額不足!''')
                            elif Add_Product_Num == "q":
                                print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                                ThroughShoppingDic(Shopping_Chart)
                                WriteShoppingProductFile(Shopping_Chart)
                                print('''您的余額為:%s''' % Balance)
                                Exit_System()
                            else:
                                print('invalid option')
                            Break_Flag = BreakFlag()
                    else:
                        print('''您輸入編號為[%s]的操作不存在!''' % Shopping_Chart_Choose)
                elif Add_Shoppping_Index == 'q':
                    print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                    ThroughShoppingDic(Shopping_Chart)
                    WriteShoppingProductFile(Shopping_Chart)
                    print('''您的余額為:%s''' % Balance)
                    with open("user.txt", 'r+', encoding='utf-8') as f:
                        User_Info = name + "" + str(Balance)
                        f.writelines(User_Info + "\n")
                    Exit_System()
                else:
                    print("invalid option")
                Break_Flag = BreakFlag()
        elif Shopping_Chart_Choose==2:
            while Break_Flag != 'n':
                ThroughShoppingDic(Shopping_Chart)
                Del_Shoppping_Index = input('''\n\t\t請輸入您要刪除商品的編號:''')
                if Del_Shoppping_Index.isdigit():
                    Del_Shoppping_Index = int(Del_Shoppping_Index)
                    if Del_Shoppping_Index >= 0 and Del_Shoppping_Index < len(Shopping_Chart):
                        Del_Product_Name = Dic_key[Del_Shoppping_Index]
                        while Break_Flag != 'n':
                            Del_Product_Num = input('''\t\t請輸入您要增加的商品數量:''')
                            if Del_Product_Num.isdigit():
                                Del_Product_Num = int(Del_Product_Num)
                                if Del_Product_Num>=0 and Del_Product_Num<=Shopping_Chart[Del_Product_Name]:
                                    Balance += Product_List[Del_Product_Name]*Del_Product_Num
                                else:
                                    print('''\t\t您輸入的商品數量有誤,請重新輸入!''')
                            elif Add_Product_Num == "q":
                                print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                                ThroughShoppingDic(Shopping_Chart)
                                WriteShoppingProductFile(Shopping_Chart)
                                print('''您的余額為:%s''' % Balance)
                                with open("user.txt", 'r+', encoding='utf-8') as f:
                                    User_Info = name + "" + str(Balance)
                                    f.writelines(User_Info + "\n")
                                Exit_System()
                            else:
                                print('invalid option')
                            Break_Flag = BreakFlag()
                    else:
                        print('''您輸入編號為[%s]的操作不存在!''' % Shopping_Chart_Choose)
                elif Add_Shoppping_Index == 'q':
                    print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
                    ThroughShoppingDic(Shopping_Chart)
                    WriteShoppingProductFile(Shopping_Chart)
                    print('''您的余額為:%s''' % Balance)
                    with open("user.txt", 'r+', encoding='utf-8') as f:
                        User_Info = name + "" + str(Balance)
                        f.writelines(User_Info + "\n")
                else:
                    print("invalid option")
                Break_Flag = Break_Flag
        elif Shopping_Chart_Choose==3:
            print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
            ThroughShoppingDic(Shopping_Chart)
            Exit_System()
        else:
            continue
    else:
        print('''\n\t\t序號\t\tname\t\tprice\t\tnum\t\t''')
        ThroughShoppingDic(Shopping_Chart)
        WriteShoppingProductFile(Shopping_Chart)
        print('''您的余額為:%s''' %Balance)
        with open("user.txt", 'r+', encoding='utf-8') as f:
            User_Info = name + "" + str(Balance)
            f.writelines(User_Info + "\n")
        Exit_System()

管理員程序:

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_
# author:snate
# 將商品列表從文件中讀出,並寫入字典
def ReadProductDic():
    with open('Product_List.txt', 'r', encoding="utf-8") as f:
        for line in f:
            Product_Info = line.strip("\n").split(" ")
            Index = int(Product_Info[0])
            Product_Name = Product_Info[1]
            Product_Price = Product_Info[2]
            Product_List[Product_Name] = int(Product_Price)
            print(Index,Product_Name,Product_List[Product_Name])
def WriteShoppingProductFile(Product_List):
    with open('Product_List', 'w', encoding="utf-8") as f:
        for index,Product_Name in enumerate(Product_List):
            index = str(index)
            Product_Price= str(Product_List[Product_Name])
            Product_Str=index+" "+ Product_Name + " " + Product_Price
            f.writelines(Product_Str+"\n")

if __name__ == '__main__':
    Product_List = {}
    ReadProductDic()
    Modify_Product_Name = input("請輸入要修改價格的商品:")
    Modify_Product_Price = input("請輸入要修改的價格:")
    if  Modify_Product_Name in Product_List:
        if Modify_Product_Price.isdigit():
            Modify_Product_Price = int(Modify_Product_Price)
            Product_List[Modify_Product_Name] = Modify_Product_Price
    else:
        Product_List[Modify_Product_Name] = Modify_Product_Price
    WriteShoppingProductFile(Product_List)

  流程圖:

 字符串

name = "Nihaonihaoxlwpxxa"
print(name.capitalize())  # 首字母大寫
print(name.count("nihao"))  # 統計某個字符或者字符串出現的次數
print('''My name is :{name},my age is {age}'''.format(name="gxw",age=26))  # 標准化輸出
print(name.isalnum())  # 是否為阿拉伯數字
print(name.isalpha())  # 是否全為純英文字母
print(name.isdigit())  # name是否為整數
print(name.istitle())  # 判斷首字母是否大寫
print(name.islower())  # 判斷是否全為小寫
print(name.isupper())  # 判斷是否全為大寫?
print(name.strip())  # 去掉 name中的空格和回車
print(name.strip().split())  # 去掉空格后,再空格分隔,返回列表
print(name.startswith("N"))  # 是否以N開頭
# print("+".join([1,2]))   # t
print(" ".join(["nihao","wohenhao"])) # 備注:可以將列表轉化成字符串,但是列表的元素必須為字符或者是字符串,否則會報錯!
p=str.maketrans("abcd","123$") # 生成字典 a:1 b:2  c:3 d:$
print(p)
print(name.swapcase())  # 小寫變大寫
print(name.split()) # 以空格為單位,將字符串分隔

 字典

Python字典是另一種可變容器模型,且可存儲任意類型對象,如字符串、數字、元組等其他容器模型

#!/usr/bin/env python 
# _*_ encoding:utf-8 _*_

Product_List={"iPad":3500,
              "Kindle":1699,
              "MI Pad":1499,
              "IMAC":20000,
              "MP3":200
              }
# 遍歷1
for  index ,Product in enumerate(Product_List):
    print(index,Product)
# 遍歷2
for product in Product_List:
    print(product,Product_List[product])
# 遍歷3
for k,v in Product_list.item():
   print(k,v)


info.setdefault("stu1104","alex")
print(info)
keys = info.keys()
print(keys)
print(info.keys())
print(info.values())
更新
b = {1:2,3:4, "stu1102":"龍澤蘿拉"}
print(info.update(b))
# 增
info["stu1104"] = "wo hen bu hao"
# 改
info["stu1101"] = "nihao"
print(info)
#刪
del info["stu1101"]
info.pop("stu1101")
print(info)
#查
print("stu1101" in info)
print("stu1102" in info)
print(info.get("stu1102"))  
print(info.get("stu1105"))
print(info["stu1105"]) # #如果一個key不存在,就報錯,get不會,不存在只返回None
av_catalog = {
    "歐美":{
        "www.youporn.com": ["很多免費的,世界最大的","質量一般"],
        "www.pornhub.com": ["很多免費的,也很大","質量比yourporn高點"],
        "letmedothistoyou.com": ["多是自拍,高質量圖片很多","資源不多,更新慢"],
        "x-art.com":["質量很高,真的很高","全部收費,屌比請繞過"]
    },
    "日韓":{
        "tokyo-hot":["質量怎樣不清楚,個人已經不喜歡日韓范了","聽說是收費的"]
    },
    "大陸":{
        "1024":["全部免費,真好,好人一生平安","服務器在國外,慢"]
    }
}

av_catalog["大陸"]["1024"][1] = ",可以用爬蟲爬下來"
print(av_catalog["大陸"]["1024"])

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM