python作业02
1、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex', 'eric', 'rain']
- li = ['alex', 'eric', 'rain']
- v = "_".join(li)
- print(v)
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"} # 字典
- tu_li = list(tu)
- dic_li = list(dic.values())
- list = li + tu_li + dic_li
- for i in list:
- m = i.strip()
- # startswith查看开头字符,endswith查看结尾字符
- if(m.startswith('a') or m.startswith('A') and m.endswith('c')):
- print(m)
3、写代码,有如下列表,按照要求实现每一个功能
li=['alex', 'eric', 'rain']
计算列表长度并输出
列表中追加元素“seven”,并输出添加后的列表
请在列表的第1个位置插入元素“Tony”,并输出添加后的列表
请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表
请删除列表中的元素“eric”,并输出修改后的列表
请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表
请删除列表中的第3个元素,并输出删除元素后的列表
请删除列表中的第2至4个元素,并输出删除元素后的列表
请将列表所有的元素反转,并输出反转后的列表
请使用for、len、range输出列表的索引
请使用enumrate输出列表元素和序号(序号从100开始)
请使用for循环输出列表的所有元素
- #
- print(len(li))
- #
- li.append("seven")
- print(li)
- #
- li.insert(0,'Tony')
- print(li)
- #
- li[1] = 'Kelly'
- print(li)
- #
- li.remove('eric')
- print(li)
- #
- li.pop(1)
- print(li)
- #
- li.pop(2)
- print(li)
- #
- li = ['alex', 'eric', 'rain']
- del li[1:3]
- print(li)
- #
- li = ['alex', 'eric', 'rain']
- li.reverse()
- print(li)
- #
- li = ['alex', 'eric', 'rain']
- for i in range(len(li)):
- print(i)
- #
- li = ['alex', 'eric', 'rain']
- for m,n in enumerate(li,100):
- print(m,n)
- #
- for i in li:
- print(i)
4、写代码,有如下列表,请按照功能要求实现每一个功能
li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]
请根据索引输出“Kelly”
请使用索引找到'all'元素并将其修改为“ALL”,如:li[0][1][9]...
写代码,有如下元组,按照要求实现每一个功能
- print(li[2][1][1])
- li[2][2] = "ALL"
- print(li)
5、写代码,有如下元组,请按照功能要求实现每一个功能
tu=('alex', 'eric', 'rain')
计算元组长度并输出
获取元组的第2个元素,并输出
获取元组的第1-2个元素,并输出
请使用for输出元组的元素
请使用for、len、range输出元组的索引
请使用enumrate输出元祖元素和序号(序号从10开始)
- print(len(tu))
- print(tu[1])
- print(tu[0:2])
- for i in tu:
- print(i)
- for m in range(len(tu)):
- print(m)
- for n,k in enumerate(tu,10):
- print(n,k)
6、有如下变量,请实现要求的功能
tu = ("alex", [11, 22, {"k1": 'v1', "k2": ["age", "name"], "k3": (11,22,33)}, 44])
讲述元祖的特性
请问tu变量中的第一个元素“alex”是否可被修改?
请问tu变量中的"k2"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven”
请问tu变量中的"k3"对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素“Seven”
答:
1、元组跟列表差不多,它一旦创建,便不能再修改.元组本身不可变,如果元组中还包含其他可变元素,这些可变元素可以改变。
2、tu变量中的第一个元素“alex”不可被修改
3、"k2"是列表,可以修改。 tu[1][2]["k2"].append("Seven")
4、"k3"是元组不可修改
7、字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
请循环输出所有的key
请循环输出所有的value
请循环输出所有的key和value
请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
请在修改字典中“k1”对应的值为“alex”,输出修改后的字典
请在k3对应的值中追加一个元素44,输出修改后的字典
请在k3对应的值的第1个位置插入个元素18,输出修改后的字典
- #
- for i in dic.keys():
- print(i)
- #
- for j in dic.values():
- print(j)
- #
- for i,j in dic.items():
- print(i,j)
- #
- dic["k4"] = "v4"
- print(dic)
- #
- dic["k1"] = "alex"
- print(dic)
- #
- dic["k3"].append(44)
- print(dic)
- #
- dic["k3"].insert(0,18)
- print(dic)
8、转换
将字符串s = "alex"转换成列表
将字符串s = "alex"转换成元祖
将列表li = ["alex", "seven"]转换成元组
将元祖tu = ('Alex', "seven")转换成列表
将列表li = ["alex", "seven"]转换成字典且字典的key按照10开始向后递增
- #
- s = "alex"
- s_list = list(s)
- print(s_list)
- #
- s = "alex"
- s_tuple = tuple(s)
- print(s_tuple)
- #
- li = ["alex", "seven"]
- li_tuple = tuple(li)
- print(li_tuple)
- #
- tu = ('Alex', "seven")
- tu_list = list(tu)
- print(tu_list)
- #
- li = ["alex", "seven"]
- li_dict = {}
- for m,n in enumerate(li,10):
- li_dict[m] = n
- print(li_dict)
9、元素分类
有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。
即:{'k1':大于66的所有值, 'k2':小于66的所有值}
- li = [11,22,33,44,55,66,77,88,99,90]
- li.sort() # 排序
- list1 = []
- list2 = []
- for i in li :
- if i < 66:
- list1.append(i)
- elif i > 66:
- list2.append(i)
- else:
- pass
- dic = {"k1": list1,"k2": list2}
- print(dic)
10、输出商品列表,用户输入序号,显示用户选中的商品
商品li = ["手机", "电脑", '鼠标垫', '游艇']
允许用户添加商品
用户输入序号显示内容
- print("商品列表,用户输入序号,显示用户选中的商品".center(25,'-'))
- li = ["手机", "电脑", '鼠标垫', '游艇']
- for i,num in enumerate(li,1):
- print(i,num)
- # 添加商品
- choice = input("y=yes,n=no] 是否添加商品:".rjust(20,'-'))
- if choice == "y" or choice == "Y":
- good = input("需要添加的商品".rjust(20,'-'))
- li.append(good)
- for i,num in enumerate(li,1):
- print(i,num)
- elif choice =='n' or choice == "N":
- pass
- else:
- print("请输入正确的选项")
- choice_Item = input("[q=quit] 查看序号对应商品,按q退出!")
- if choice_Item.isdigit() and int(choice_Item) <= len(li):
- print(li[int(choice_Item)-1])
11、用户交互显示类似省市县N级联动的选择
允许用户增加内容
允许用户选择查看某一个级别内容
- china = {
- '北京':{
- '海淀':{},
- '朝阳':{},
- '东城':{}
- },
- '湖北':{
- '武汉':{},
- '荆门':{},
- '宜昌':{}
- }
- }
- current_layer = china # 当前层
- layers = []
- tag = True
- while tag:
- # 一级菜单
- for k in current_layer:
- print(k)
- choice = input(">:").strip()
- # 二级菜单
- if choice in current_layer:
- # 进入下一级菜单,保存当前菜单
- layers.append(current_layer)
- # 二级菜单赋给当前层
- current_layer = current_layer[choice]
- elif choice == "back":
- if len(layers) != 0:
- # pop删除列表最后一个元素,并返回删除后最后一个元素
- current_layer = layers.pop()
- else:
- print("已经是最顶层目录!")
- elif choice == "add":
- add_node = input("在当前目录下添加节点:")
- current_layer[add_node] = {}
- elif choice == "exit":
- tag = False
- print("good bye!")
- else:
- continue
12、列举布尔值是False的所有值
bool(0) bool(None) bool("") bool(()) bool([]) bool({}) 五种情况下为false
13、有两个列表
l1 = [11,22,33]
l2 = [22,33,44]
获取内容相同的元素列表
获取l1中有,l2中没有的元素列表
获取l2中有,l3中没有的元素列表
获取l1和l2中内容都不同的元素
- set1 = set(l1)
- set2 = set(l2)
- p1 = set1 & set2
- print(p1)
- p2 = set1.difference(set2)
- print(p2)
- p3 = set2.difference(set1)
- print(p3)
- p4 = set1.union(set2).difference(set1 & set2)
- print(p4)
14、利用For循环和range输出
For循环从小到大输出1 - 100
for i in range(1,101):
print(i)
For循环从大到小输出100 - 1
for i in range(100,0,-1):
print(i)
While循环从大到小输出1 - 100
n = 100
while n > 0:
print(n)
n -= 1
While循环从小到到输出100 - 1
n = 1
while n <=100:
print(n)
n += 1
15、利用for循环和range输出9 * 9乘法表
- #左下三角格式输出九九乘法表
- for i in range(1,10):
- for j in range(1,i+1):
- print("%d*%d=%2d" % (i,j,i*j),end=" ")
- print (" ")
16、求100以内的素数和。(编程题)
- sum_prime = 0
- for i in range(2,101):
- n = 0
- for j in range(2,i-1):
- if i % j == 0:
- n = 1
- break
- if n == 0:
- sum_prime += i
- print(sum_prime)
17、将[1,3,2,7,6,23,41,24,33,85,56]从小到大排序(冒泡法)(编程)
- li = [1,3,2,7,6,23,41,24,33,85,56]
- for i in range(0,len(li)):
- for j in range(i+1,len(li)):
- if li[i] > li[j]:
- li[i], li[j] = li[j], li[i]
- print(li)
python作业02的更多相关文章
- Python作业第一课
零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~ Python作业第一课1)登陆,三次输入锁定,下次不允许登陆2)设计一个三级菜单,菜单内容可自行定义, ...
- python作业ATM(第五周)
作业需求: 额度 15000或自定义. 实现购物商城,买东西加入 购物车,调用信用卡接口结账. 可以提现,手续费5%. 支持多账户登录. 支持账户间转账. 记录每月日常消费流水. 提供还款接口. AT ...
- Python学习02 列表 List
Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...
- Python网络02 Python服务器进化
原文:Python网络02 Python服务器进化 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! **注意,在Python 3. ...
- JAVA自学作业02
JAVA自学作业02 1.什么是标识符?由哪些部分组成?常见的命名规则有哪些? 标识符是用户为变量的内存空间所定义的字符序列: 可以由字母.下划线.美元符号以及数字组成,但数字不可作为首字符.标识符不 ...
- Python作业-选课系统
目录 Python作业-选课系统 days6作业-选课系统: 1. 程序说明 2. 思路和程序限制 3. 选课系统程序目录结构 4. 测试帐户说明 5. 程序测试过程 title: Python作业- ...
- (转)Python作业day2购物车
Python作业day2购物车 原文:https://www.cnblogs.com/spykids/p/5163108.html 流程图: 实现情况: 可自主注册, 登陆系统可购物,充值(暂未实现) ...
- python进阶02 特殊方法与特殊属性
python进阶02 特殊方法与特殊属性 一.初始化.析构 1.初始化 # python中有很多双下划线开头且以下划线结尾的固定方法,它们会在特定的时机被触发执行,这便是特殊方法 # 在实例化的时候就 ...
- C语言I—2019秋作业02
1.[新增内容] 这个作业属于那个课程 C语言程序设计 这个作业要求在哪里 <C语言I-2019秋作业02> 我在这个课程的目标是 这个作业在那个具体方面帮助我实现目标 <实现一些基 ...
随机推荐
- yaf代码生成工具的使用
具体步骤如下: 1.下载php-yaf源码: git clone https://github.com/laruence/php-yaf/ 2.运行代码生成工具: /Users/helloxiaozh ...
- 关于adb is down 的两个解决方案
在Android开发过程中经常遇到这样的一个问题,The connection to adb is down, and a severe error has occured. 解决方案一: 1.为了以 ...
- 5.1 TLP的格式
当处理器或者其他PCIe设备访问PCIe设备时,所传送的数据报文首先通过事务层被封装为一个或者多个TLP,之后才能通过PCIe总线的各个层次发送出去.TLP的基本格式如图5?1所示. 一个完整的TLP ...
- ffmpeg结构体以及函数介绍(三)
1 AVPacket typedef struct AVPacket { /** * Presentation timestamp in AVStream->time_base units; t ...
- SQL注入攻击三部曲之高级篇
SQL注入攻击三部曲之高级篇 经过了入门篇和进阶篇的学习,相信诸位想要破解一般的网站是没有什么问题了,但是先别得意.正所谓学海无涯,技术的进步也是没有止境的.SQL注入是一个看起来简单,但是变数很多的 ...
- R语言︱文本挖掘——jiabaR包与分词向量化的simhash算法(与word2vec简单比较)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- <数据挖掘之道>摘录话语:虽然我比 ...
- VTK显示.vtk格式文件
void ReadandShowVTKFile () { vtkSmartPointer<vtkRenderer > aRenderer = vtkSmartPointer<vtkR ...
- Struts2实现文件上传报错(二)
1.具体报错如下 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -he ...
- java web面试题
java web面试题 第1题. 编写一个Filter,需要() A. 继承Filter 类 B. 实现Filter 接口 C. 继承HttpFilter 类 D. 实现HttpFilter ...
- Linux显示2015年日历表
Linux显示2015年日历表 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ cal 2015 2015 一月 二月 三月 日 一 二 三 四 五 六 日 一 ...