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")

 

posted @ 2020-10-21 14:50  余球球  阅读(126)  评论(0)    收藏  举报