str,list等数据类型的常见操作

 

#str常用操作
name="eric"
re=name.__contains__("ri")
print("name中是否含有ri:",re)
l=len(name)
print("name的长度为:",l)
re1=name.capitalize()
print("name的首字母大写:",re1)
re2=re1.casefold()
print("将首字母由大写变小写:",re2)
re3=name.center(20,"*")
print("字符总长度为20,name放在中间:",re3)
lname="Ericericri"
re4=lname.count("ri")
print("ri出现的次数为:",re4)
re5=lname.startswith("E")
print("lname是不是以E开头的:",re5)
re6=lname.endswith("r")
print("lname是不是以R结尾:",re6)
re7=lname.find("ri")#找不到返回-1
print("ri所在位置是:",re7)
re8=lname.index("ri")#找不到抛出异常,报错
print("ri所在位置是:",re8)
rname="alex {0} as {1}"
re9=rname.format("sh","eric")
print("字符串格式化:",re9)
li=["a","l","e","x","s","b"]
re10="".join(li)
print("li的连接是:",re10)
re11=name.ljust(10,"*")
print("输出name,不足部分右侧用*号填充:",re11)
ree=name.rjust(10,"*")
print("输出name,不足部分左侧用*号填充:",ree)
name1='alexissb'
re12=name1.partition("is")
print("字符串分割为元组:",re12)
re13=name1.replace("e","AAA")
print("replace字符串替换:",re13)

print(name.center(60,"*"))
#list常用操作
li=[1,2,3]
li.extend([11,22,])
print('li扩展后为:',li)
li.append(99)
print("li追加后为:",li)
li.insert(2,"aass")
print("在第三个位置插入元素:",li)
ret=li.pop(3)
print("删除第4个位置上的元素:",li)
print("删除的元素为:",ret)
print("返回某一元素值得索引:",li.index(22))

ll=[11,22,33,11]
ll.remove(11)#只能删除第一个
print("删除列表中的11:",ll)
ll.reverse()
print("翻转后为:",ll)

 

 

 

 

练习题:

1、有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

#动态增加字典
l2=[11,22,33,55,66,77,88,99]
dict2={}
for i in l2:
    if(i<=66):
        if("k1" in dict2.keys()): #若存在键k1,则追加,否则创建
            dict2["k1"].append(i)
        else:
            dict2["k1"]=[i,]
    else:
        if("k2" in dict2.keys()):
            dict2["k2"].append(i)
        else:
            dict2["k2"]=[i,]
print(dict2)
2、查找
查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
    li = ["alec", " aric", "Alex", "Tony", "rain"]
    tu = ("alec", " aric", "Alex", "Tony", "rain") 
    dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
#在三种不同类型的元素中查找,为了方便,可将三种类型全部转化为一种类型list
li = ["alec", " Aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {'k1': "alex", 'k2': ' aric',  "k3": "Alex", "k4": "Tony"}
l3=list(tu)
l4=list(dic.values())
newlist=li+l3+l4
for i in newlist:
    res=i.strip()  #为了保证查找的精确性,去除空格
    if(res.startswith("a")or res.startswith("A"))and res.endswith("c"):
        print(res,end="\t")
print()

 

 
3、输出商品列表,用户输入序号,显示用户选中的商品
    商品 li = ["手机", "电脑", '鼠标垫', '游艇']
#enumerate为可迭代对象添加序号,第一个参数值为可迭代对象,第二个为从几开始
lii=["手机", "电脑", '鼠标垫', '游艇']
for k,i in enumerate(lii,1):
    print(k,i)
inp=int(input("请输入你选择商品的编号:"))
print(lii[inp-1])

 

 
 

转载于:https://www.cnblogs.com/eric8899/p/5941197.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值