Py 3基础 day2(continue2)

深浅copy

import copy
person = ['name',['saveing',100]]
'''
p1 = copy.copy(person)
p2 = person[:]
p3 = list(person)'''
p1 = person[:]
p2 = person[:]
p1[0] = 'zhang'
p2[0] = 'fengjie'
p1[1][1] = 50
print(p1)
print(p2)

元组()

元组不可变


练习题:enumerate的应用(取出列表下标)

1.启动程序,让用户输入工资,让后打印列表

2.允许用户根据商品的编号购买商品

3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒

4.可随时退出,打印已购买的商品和余额

product_list = [
    ('Iphone',5800),
    ('Mac_PRO',12000),
    ('bike',800),
    ('Watch',10600),
    ('Coffee',31),
    ('python',88),
]
salary = input("Input your salary:")
if salary.isdigit():
    salary = int(salary)
    while True:
        for index,item in enumerate(product_list):
            print(index,item)
            #print(product_list.index(item),item)

       break

1.启动程序,让用户输入工资,让后打印列表

2.允许用户根据商品的编号购买商品

3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒

4.可随时退出,打印已购买的商品和余额

product_list = [

    ('Iphone',5800),
    ('Mac Pro',9800),
    ('Bike',800),
    ('Watch',10000),
    ('Python Book',88),
    ('coffe',30),
    ('blog',60),
]
shopping_list = []
salary = input("Input your salary:")
if salary.isdigit():
    salary = int(salary)
    while True:
        for index,item in enumerate(product_list):
            print(index,item)
            #print(product_list.index(item),item)
        user_choice = input("请输入要买的商品:")
        if user_choice.isdigit():
            user_choice = int(user_choice)
            if user_choice < len(product_list) and user_choice >=0:
                p_item = product_list[user_choice]
                if p_item[1] <= salary: #买得起
                    shopping_list.append(p_item)
                    salary -= p_item[1]
                    print("Added %s into shopping cart,your current balance is \033[31;1m%s\033[0m" %(p_item,salary))
                else:
                    print("\033[41;1m你的余额只剩[%s]啦,你还买啥呀!\033[0m"% user_choice)
            else:
                print("product code [%s] is not exit!")
        elif user_choice == 'q':
            print("-----shopping_list-----")
            for p in shopping_list:
                print(p)
            print("Your current balance:",salary)
            exit()
        else :
            print("invalid option")
2.字符串的操作

name = "zhangguoqi"
print(name.capitalize()) #首字母大写
print(name.count("g")) #统计字母个数
print(name.center(30,"-"))#打印50个字符,不够的补上
#print(name.encode())
print(name.endswith("qi"))#判断字符串以什么结尾
print(name.expandtabs(tabsize=20)) #打印多少个空格
print(name[name.find("z"):6])#字符串可以切片
print('ab66'.isalnum()) #
print('abc66'.isalpha()) #纯英文字符
print('E'.isdecimal()) #是否是10进制数
print('E'.isdigit()) #是否是一个整数
print('e'.isidentifier())#判断是否是合法的标识符
print('e'.islower())#是否是小写
print('E'.istitle())#是否是标题
print('e'.isupper())#是否全是大写
print('+'.join(['1','2','3']))#1+2+3
print(name.ljust(30,'&'))#不够字符串长度在后面补上
print(name.rjust(30,'&'))#不够字符串长度在前面补上
print('Zhang'.lower())#变小写
print('Zhang'.upper())#变大写
print('Zhang\n'.lstrip())#去左
print('\nZhang'.lstrip())#去右
 
 
p = str.maketrans("abcdef",'123456')  #随机密码
print("zhangguoqi".translate(p))
print('zhang'.replace('g','G',1))#替换(只替换一个)
print('zhang'.rfind('a'))#找到字母所在的位置
print('1+2+3'.split('+'))#将字符分离出来
print('1+2\n+5'.splitlines())#识别系统的换行
print('zhang'.swapcase())#变换大写
print('zhangguoqi'.zfill(50))#不够位数填充零
3.字典操作



猜你喜欢

转载自blog.csdn.net/qq_37951246/article/details/80311849
今日推荐