Python基础语法(二)


day12 2018.05.07

1、请用代码实现,利用下划线将列表的每一个元素拼接成字符串,li = ['alex',‘eric’,'rain']

li = ['alex','eric','rain']
print("_".join(li))

2、查找列表中元素,移除每个元素的空格,并查找以a或A开头并且以c结尾的所有元素。

li = ["a lec","ada c","Alex","Tony "," rain"]
tu = ("alec","adad","Alex","Tony","rain")
dic = {"k1":"alec","k2":"adad","k3":"Alex","k4":"Tony","k5":"rain"}


print("改变以前的li:",li)
#移除空格
for item in li:
li[li.index(item)]=item.replace(" ","")
print("改变后的li:",li)

for item in li:
if (item.startswith("a") or item.startswith("A")) and item.endswith("c"):
print("列表li以A或a开头c结尾的元素:",item)


3、写代码,有如下列表,按照要求实现每一个功能

li = ["alex","eric","rain"]
a.计算列表长度并输出

print(li.__len__())

b.列表中追加元素“seven”,并输出添加后的列表

扫描二维码关注公众号,回复: 157990 查看本文章

li.append("seven")
print(li)

c.请在列表的第1个位置插入元素“Tony”,并输出添加后的列表

li.insert(0,"Tony")
print(li)

d.请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表

li.insert(1,"Kelly")
print(li)

e.请删除列表中的元素“eric”,并输出修改后的列表

li.remove("eric")
print(li)

f.请删除列表的第2个元素,并输出删除的元素的值和删除元素后的列表

li.pop(1)
print(li)

g.请删除列表中的第3个元素,并输出删除元素后的列表

v = li.pop(1)
print(li,v)

h.请删除列表中的第2至4个元素,并输出删除元素后的列表

del li[1:4]
print(li)

i.请将列表所有的元素反转,并输出反转后的列表。

li.reverse()
print(li)

j.请使用for、len、range输出列表的索引

for item in range(li.__len__()):
print(item,li[item])

k.请使用enumrate输出列表元素和序号(序号从100开始)

for i,item in enumerate(li):
print(i+100,item)


l.请使用for循环输出列表的所有元素

for item in li:
print(item)

4、写代码,有如下列表,请按照功能要求实现每一个功能
li = ["hello",'seven',["moon",["h","kelly"],'all'],123,446]
a.请根据索引输出“Kelly”

print(li[2][1][1])

b.请使用索引找到'all'元素并将其修改为“ALL”.

li[2][2]="ALL"
print(li)

5、写代码,有如下元祖,按照要求实现每一个功能
tu = (‘alex’,'eric','rain')
a.计算元祖长度并输出

print(tu.__len__())

b.获取元祖的第2个元素,并输出

print(tu[1])

c.获取元祖的第1~2个元素,并输出

print(tu[0:2])

d.请使用for输出元祖的元素

for item in tu:
print(item)

e.请使用for、len、range输出元祖的索引

for item in range(tu.__len__()):
print(item)

f.请使用enumrate输出元祖元素和序号(序号从10开始)

for i,item in enumerate(tu):
print(i,item)

6、有如下变量,请实现要求的功能
tu = ("alex",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44])
a.讲述元祖的特性

元祖,的第一级元素不可更改。

b.请问tu变量中的第一个元素“alex”是否可被修改?

不能

c.请问tu变量中的“k2”对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven”

"k2"对应的是列表,可以被修改。

tu[1][2]["k2"].append("Seven")
print("修改后的tu",tu)

d.请问tu变量中的“k3”对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven”
"k3"对应的是元祖,不可以被修改。

7、字典
dic = {'k1':"v1",'k2':"v2",'k3':[11,22,33]}
a.请循环输出所有的key

for item in dic:
print(item)

b.请循环输出所有的value

for item in dic.values():
print(item)

c.请循环输出所有的key和value

for item in dic.items():
print(item)

d.请在字典中添加一个键值对,“k4”:"v4",输出添加后的字典

dic.update({"k4":"v4"})
print(dic)

dic.update(k4="v4")
print(dic)

e.请在修改字典中“k1”对应的值为"alex",输出修改后的字典

dic["k1"]="alex"
print(dic)

f.请在k3对应的值中追加一个元素44,输出修改后的字典

dic["k3"].append(44)
print(dic)

g.请在k3对应的值的第1个位置插入元素18,输出修改后的字典

dic["k3"].insert(0,18)
print(dic)

8、转换
a.将字符串s="alex"转换成列表

s = list(s)
print(s)

b.将字符串s="alex"转换成元祖

s = tuple(s)
print(s)

c.将元祖tu=('Alex',"seven")转换成列表

l = list(tu)
print(l)

d.将列表li=["alex",“seven”]转换成字典且字典的key按照10开始向后递增

li=["alex","seven"]
dic = {}
print(dic)
for i in range(10,10+li.__len__()):
dic[i] = li[i-10]
print(dic)


9、元素分类
有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。

li = [11,22,33,44,55,66,77,88,99,90]
dic = {"k1":[],"k2":[]}
print(dic)
for item in li:
if item > 66:
dic["k1"].append(item)
elif item < 16:
dic["k2"].append(item)
print(dic)


10、输出商品列表,用户输入序号,显示用户选中的商品
商品li=["手机",“电脑”,“鼠标垫”,“游艇”]
a.允许用户添加商品
b.用户输入序号显示内容

dic={"1":"手机","2":"电脑","3":"鼠标垫","4":"游艇"}
print(dic)
k = input("请输入商品序号:")
print(dic[k])
goods = input("请输入商品名称:")
dic.update({str(dic.__len__()):goods})
print(dic)


11、用户交互显示类似省市县N级联动的选择
a.允许用户增加内容
b.用户输入序号显示内容



12、列表布尔值是False的所有值

None,0,"",[],{},()

13、有两个列表
l1=[11,22,33]
l2=[22,33,44]
a.获取内容相同的元素列表


b.获取l1中有,l2中没有的元素列表
c.获取l2中有,l1中没有的元素列表
d.获取l1和l2中内容都不同的元素

14、利用for循环和range输出
a.for循环从大到小输出1-100
b.for循环从小到大输出100-1
c.while循环从大到小输出1-100
d.while循环从小到大输出100-1

15、购物车
功能要求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账号余额不足,否则,购买成功。

goods=[
{“name”:"电脑","price":1999},
{“name”:"鼠标","price":10},
{“name”:"游艇","price":20},
{“name”:"美女","price":998},
]


16、分页显示内容
a.通过for循环创建301条数据,数据类型不限,如:
alex-1 [email protected] pwd1
alex-2 [email protected] pwd2
alex-3 [email protected] pwd3

b.提示用户 请输入要查看的页码,当用户输入指定页码,则显示指定数据
注意:
每页显示10条数据
用户输入页码是非十进制数字,则提示输入内容格式错误


17、有1、2、3、4、5、6、7、8、9个数字,能组成多少个互不相同且无重复数字的两位数

18、利用for循环和range输出9*9乘法表

19、有一列表,nums=[2,7,11,15,1,8,7]
请找到列表中任意两个元素相加能够等于9的元素集合,

20、用Python开发程序自动计算方案:
公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡、母鸡,小鸡都必须要有,请问公鸡、母鸡、小鸡要买多少只刚好凑足100文钱?

猜你喜欢

转载自www.cnblogs.com/weiweideboke/p/9005881.html