1、创建一个空列表,命名为names,往里面添加 Lihua、Rain、Jack、Xiuxiu、Peiqi和Black元素。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]

2、往(1)中的names列表里Black前面插入一个Blue。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")

3、把names列表中Xiuxiu的名字改成中文。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"

4、往names列表中Rain后面插入一个子列表["oldboy","oldgirl"]。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names) # 验证

5、返回names列表中Peiqi的索引值(下标)。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi"))

6、创建新列表[1,2,3,4,2,5,6,2,],合并到names列表中。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers) # extend()方法表示合并
print(names)

7、取出names列表中索引4-7的元素。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers) # extend()方法表示合并
print(names) print(names[4:8])

8、取出names列表中索引2-10的元素,步长为2。

#! -*-coding:utf-8 -*-
names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
# print(names)
names[names.index("Xiuxiu")] = "秀秀"
# print(names)
names.insert(2,["oldboy","oldgirl"])
# print(names)
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers)
print(names) print(names[2:11:2]) # 列表切片“顾头不顾尾”,步长表示在指定范围间隔取值

9、取出names列表中最后3个元素。

#! -*-coding:utf-8 -*-
names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
# print(names)
names[names.index("Xiuxiu")] = "秀秀"
# print(names)
names.insert(2,["oldboy","oldgirl"])
# print(names)
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers)
print(names) print(names[-3:]) # [-3:]表示取值范围为从列表的倒数第三个到末尾

10、循环names列表,打印每个元素的索引值和元素。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiouxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers)
print(names) # 验证 #方法1
for i in names:
print(names.index(i),i)
# 方法2 enumerate()枚举
for index,i in enumerate(names):
print(index,i)

11、循环names列表,打印每个元素的索引值和元素,当索引值为偶数时,把对应的元素改成-1。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers)
print(names) # 验证 for index,i in enumerate(names):
if index%2==0:
names[index] = -1
print(index,i)
print(names)

12、names列表里有3个2,请返回第二个2的索引值,不要人肉,要动态找。

#!-*- coding:utf-8 -*-

names = ["Lihua","Rain","Jack","Xiuxiu","Peiqi","Black"]
names.insert(-1,"Blue")
names[names.index("Xiuxiu")] = "秀秀"
names.insert(2,["oldboy","oldgirl"])
print(names.index("Peiqi")) numbers = [1,2,3,4,2,5,6,2]
names.extend(numbers)
print(names) # 验证 # 方法1 循环
count = 0
for index,i in enumerate(names):
# print(index,i)
if i == 2:
count += 1
while count == 2:
print(index)
break
else:
continue
# 方法2
print(names.index(2,names.index(2)+1))

13、现有商品列表如下:

  products =   [["iphone",6888],["MacPro",14800],["小米6",2499],["Coffee",31],["Book",60],["Nike",699]],需打印出以下格式:

------  商品列表 ------
0 iphone 6888
1 MacPro 14800
2 小米6 2499
3 Coffee 31
4 Book 60
5 Nike 699

  参考答案如下:

#!-*- coding:utf-8 -*-

products = [["iphone",6888],["MacPro",14800],["小米6",2499],["Coffee",31],["Book",60],["Nike",699]]
print("--------- 商品列表 --------")
for index,i in enumerate(products):
print("%s %s %s"%(index,i[0],i[1]))

14、根据(13)里的products列表写一个循环,不断询问用户想买什么,用户选择一个商品编号,就把对应的商品添加到购物车里,最终用户输入q退出时,打印购买的商品列表。

  参考答案如下:

#!-*- coding:utf-8 -*-
products = [["iphone",6888],["MacPro",14800],["小米6",2499],["Coffee",31],["Book",60],["Nike",699]]
shop_car = [] # 用户购物车
shop_cost = 0 # 用户花费的金额
exit_log = False # 标志位,默认设为False,退出
while not exit_log:
print("------ 商品列表 ------")
for index,i in enumerate(products):
print("%s %s %s"%(index,i[0],i[1]))
user_choice = input("\n输入你想购买的产品序号(按“q”退出):")
if user_choice.isdigit():
# 判断用户输入的是否是数字
user_choice = int(user_choice) #强制转换为数字
if user_choice>=0 and user_choice < len(products):
# 判断用户购买的商品是否在商品列表中
shop_car.append(products[user_choice]) # 加入购物车
shop_cost += products[user_choice][1] # 计算费用
print("\n %s 已经加入你的购物车\n"%products[user_choice])
else:
print("抱歉,此商品不存在\n")
elif user_choice == "q":
# 用户选择退出
if len(shop_car)>0:
# 判断用户是否购买了商品
print("\n------ 你的购物车 ------")
for index,i in enumerate(shop_car):
# index和i为临时变量,与前一个for循环里index和i作用的列表不同,故可重用
print("%s %s"%(i[0],i[1]))
print("\n你此次购物的花费合计是:%s元\n"%shop_cost)
exit_log = True # 退出购物
else:
exit_log = True # 未购买商品,不打印购物车商品,直接退出
else:
# 输入不合法
exit_log = True

Python列表练习题的更多相关文章

  1. day5.python列表练习题

    写代码,有如下列表,按照要求实现每一个功能 li = [“alex”, “WuSir”, “ritian”, “barry”, “wenzhou”] 1.计算列表的长度并输出 print(len(li ...

  2. python面试_总结03_列表练习题

    1.列表练习题 完成下列列表相关的编程题,先运行下列的test函数,在完成每道题之后,都可以通过调用test函数检测所写函数对错. def test(got, expected): if got == ...

  3. python入门练习题1

    常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...

  4. python字典练习题

    python字典练习题 写代码:有如下字典按照要求实现每一个功能dict = {"k1":"v1","k2":"v2", ...

  5. python 列表排序

    转自http://www.iplaypython.com/jinjie/jj114.html reverse()方法 将列表中元素反转排序,比如下面这样>>> x = [1,5,2, ...

  6. python列表、元祖、字典

    python列表   ['a','1','vs2']       里面的值可以改 python元祖   ('a','1','css','sdf12')   里面的值不能改 python字典   {'s ...

  7. Python列表、元组、字典和字符串的常用函数

    Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ...

  8. Python 列表

    python 列表 列表的特点 1.列表是一种可变的数据类型,这点是跟元组有区别的 2.列表中的值是有序的,并且可存放重复的值,这点跟set有区别的 3.python中的列表类似于其它语言中的数组 4 ...

  9. python 列表生成器

    python 列表生成器 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 一个循环 在C语言等其他语言中,for循环一般是这样的 ...

随机推荐

  1. 049——VUE中使用animation与transform实现vue的动画效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. get方法传送中文乱码解决方法

    找到tomcat配置文件 server.xml 找到<Connector port="8080" .......  />   (......为配置文件中原来内容) 在最 ...

  3. myeclipse10修改全局jsp编码格式为gbk

    myeclipse10修改全局jsp编码格式为gbk: window->prefenrence->general->content types->  展开:text->j ...

  4. centos7 搭建svn服务器&客户端的访问&备份迁移

    当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用: 使用环境:虚拟机为centos7系统,svn服务器安装在centos7系统平台上,s ...

  5. prototype原型模式

    /** * 原型模式 Prototype * 用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象 */ 需求: public class Resume { /** * 要求:一个简历类,必须 ...

  6. 201621123010《Java程序设计》第4周学习总结

    1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词. 继承extends.多态.抽象类 超级父类Object类.父类.子类. 覆盖Override 初始化块 识别类 重载 1.2 ...

  7. w3m使用小记

    By francis_hao    Mar 8,2017   w3m是一个基于文本的web浏览器和分页器,运行在unix和windows系统上. 可显示包含链接的超文本标记语言(HTML),显示效果如 ...

  8. Error: Could not symlink lib/pkgconfig/python-3.6.pc

    Mac安装python3的时候出如上错误 解决办法: 安装python3的时候就是输入python3死活没有反应 input sudo chown -R $USER /usr/local/lib/pk ...

  9. python下的select模块使用 以及epoll与select、poll的区别

    python下的select模块使用 以及epoll与select.poll的区别 先说epoll与select.poll的区别(总结) 整理http://www.zhihu.com/question ...

  10. postgraphile 基本试用

    我的测试环境使用docker 进行的安装 基本安装 pg 数据库 我使用的是timesacledb 复制集版本,参考https://github.com/timescale/streaming-rep ...