03 python基础作业(一)
1.将['alex','eric',’rain’]用下划线拼接成字符串。(['alex','eric',123]呢?)
li=['alex','eric','rain'] v='_'.join(li) print(v)
当列表是字符串和数字组合时:
li=['alex','eric',123] #先将数字转化为字符串。join()是字符串函数 li[2]=str(li[2]) v='_'.join(li) print(v)
分析:join方法将字符串或者字符拼接,不能将数字和字符串拼接,故要先将列表的数字元素转化为字符串。列表元素修改直接索引方式赋值。
2.查找列表中的元素,移除每个元素的空格,并查找以a或A开头,并以c结尾的所有元素。
li = ['alec', 'aric', 'Alex', 'Tony', 'rain']
tu = ('alec', 'aric', 'Alex', 'Tony', 'rain')
dic = {'k1':'alec', 'k2':'aric', 'k3':'Alex', 'k4':'Tony'}
#移除空格 lstrip
result=[]
for item in li:
if item[0]== 'a' or item[0]=='A' and item[-1]=='c':
result.append(item)
print(result)
for item in tu:
if item[0]== 'a' or item[0]=='A' and item[-1]=='c':
result.append(item)
print(result)
for item in dic.values():
if item[0]== 'a' or item[0]=='A' and item[-1]=='c':
result.append(item)
print(result)
解析:循环+if条件判断,生成空列表,将找到的元素用append方法加入。
3.写代码,有如下列表,按照每个功能实现:
li=['alex','eric',’rain’]a.计算长度并输出b.列表中追加元素’seven’,并输出添加后的列表。c.请在列表的第一个位置插入元素’Tony’,并输出添加后的列表。d.请修改列表的第二个位置的元素为’Kelly’,并输出添加后的列表。e.请删除列表的元素’eric’,并输出修改后的列表。f.请删除列表的第二个元素,并输出删除元素的值和删除元素后的列表。g.请删除列表的第三个元素,并输出删除元素后的列表。h.请删除列表的第二个至第四个元素,并输出删除元素后的列表。i.请将列别所有的元素反转,并输出删除元素后的列表。j.请使用for、len、range输出列表的索引k.请使用enumerate输出列表元素和序号(序号从100开始)l.请使用for循环输出列表所有元素
li=['alex','eric','rain']
# a.计算长度并输出
v=len(li)
print(v)
# b.列表中追加元素’seven’,并输出添加后的列表。
li.append('seven')
print(li)
# c.请在列表的第一个位置插入元素’Tony’,并输出添加后的列表。
li.insert(0,'Tony')
print(li)
# d.请修改列表的第二个位置的元素为’Kelly’,并输出添加后的列表。
li[1]='Kelly'
print(li)
# e.请删除列表的元素’eric’,并输出修改后的列表。
del li[1]
print(li)
# f.请删除列表的第二个元素,并输出删除元素的值和删除元素后的列表。#pop()可以返回删除元素的值
v=li.pop(1)
print(v,li)
# j.请使用for、len、range输出列表的索引
li=['alex','eric','rain']
for i in range(len(li)):
print(i)
# k.请使用enumerate输出列表元素和序号(序号从100开始) enumerate(sequence, [start=0])
li = ['alex', 'eric', 'rain']
# list(enumerate(li,start=100))
v=list(enumerate(li,start=100))
print(v)
# l.请使用for循环输出列表所有元素
li = ['alex', 'eric', 'rain']
for item in li:
print(item)
解析:len、索引、enumerate方法(有助于由列表生成字典)
4.写代码,有如下列表,请按照功能要求实现每一个功能
li=[‘hello’,’seven’,[‘mom’,[‘h’,’kelly’],’all’],123,446]
a.根据索引输出’Kelly’
b.使用索引找到’all’元素并将其修改为’ALL’
li=['hello','seven',['mom',['h','kelly'],'all'],123,446] # v = li.capitalize(**li[2][1][1]) # v= li[2][1][1] t=v.capitalize() #capitalize(self) print(t) ###############b############### v=li[2][2] t=v.upper() print(t)
解析:capitalize(self);upper()
6.tu=(‘alex’,[11,22,{‘k1’:’v1’,’k2’:[‘age’,’name’],’k3’:(11,22,33)},44]),请问tu变量中的’k2’对应什么类型?是否可以被修改?如果可以,请在其中添加一个元素’seven’
tu=('alex',[11,22,{'k1':'v1','k2':['age','name'],'k3':(11,22,33)},44])
tu[1][2]['k2'].append('seven') #append()直接追加到self,不需要再赋值。
print(tu)
解析:元祖第一级元素不能修改;append
7.字典
dic={'k1':'v1','k2':'v2','k3':[11,22,33]}
#a.请循环输出所有的key
for item in dic.keys():
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)
#e.请修改字典中’k1’对应的值为’alex’,输出修改后的字典
dic = {'k1': 'v1', 'k2': 'v2', 'k3': [11, 22, 33]}
dic['k1'] = 'alex'
print(dic)
#f.请在k3对应的值中追加一个元素44,输出修改后的字典
dic['k3'].append(44)
print(dic)
#g.请在k3对应的值的第一个位置插入元素18,输出修改后的字典
dic['k3'].insert(0,18)
print(dic)
解析:keys;values;items;update;索引
8.转换
#a .将字符串s=‘alex’转换成列表
s='alex'
s=list(s)
print(s)
#b .将字符串s=‘alex’转换成元组
s='alex'
s=tuple(s)
print(s)
#c . 将列表li=[‘alex’,‘seven’]转换成元组
li=['alex','seven']
li=tuple(li)
print(li)
#d .将元组tu=(‘alex’,‘seven’)转换成列表
li=('alex','seven')
li=list(li)
print(li)
#e 将列表li=[‘alex’,‘seven’]转换成字典且字典的key按照10开始向后递增 #################################
li=['alex','seven']
dic = { }
for k,v in enumerate(li,start=10):
dic[k]=v
print(dic)
解析:enumerate(*,[start]=0);tuple;list;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]
dic={ 'k1':[],'k2':[]}
for item in li:
if item > 66:
dic['k1'].append(item)
if item < 66:
dic['k2'].append(item)
print(dic)
解析:1.初始dic的建立;2.append的用法。
10.输出商品列表,用户输入序号,显示用户选中的商品
商品li=[‘手机’,‘电脑’,‘鼠标垫’,‘游艇’]
a .允许用户添加商品
b . 用户输入序号显示内容
li=['手机','电脑','鼠标垫','游艇']
dic={}
for k,v in enumerate(li,start=1):
dic[k]=v
print(dic)
n=input("如果想添加商品请输入1,如果想显示内容请输入2:")
n=int(n)
if n==1:
sp=input("请输入想添加的商品:")
dic.update({5:sp})
print(dic)
else:
nu=input('请输入1-5的序号:')
nu=int(nu)
print('-------end-------------')
03 python基础作业(一)的更多相关文章
- python基础作业1
目录 附加练习题(提示:一步步拆解) 1.想办法打印出jason 2.想办法打印出大宝贝 3.想办法打印出run 4.获取用户输入并打印成下列格式 5 根据用户输入内容打印其权限 6 编写用户登录程序 ...
- Day 03 Python 基础
目录 Pycharm 的使用 设置 快捷键 变量 什么是变量 定义变量 变量名的命名规则 变量名的两种命名方式 注释 快捷键(快速注释) 单行注释 多行注释 注释的作用 Turtle库的使用 Pych ...
- 03 Python基础
1.输出和输入 (1)print打印 Python 提供print方法来打印信息 输入: print ("hello python") 调用print方法,用户双引号(" ...
- python基础作业2
目录 编写一个用户认证装饰器 利用有参装饰器编写多种用户登录校验策略 利用递归函数依次打印列表中每一个数据值 获取用户权限并校验用户登录 编写一个用户认证装饰器 """ ...
- python基础一之课后作业:编写登录接口
1 # Author : Mamba 2 3 #python基础一之课后作业:编写登录接口 4 5 # 输入用户名密码 6 # 认证成功后显示欢迎信息 7 # 用户名3次输入错误后,退出程序 8 # ...
- python基础 实战作业 ---Excel基本读写与数据处理
代码地址如下:http://www.demodashi.com/demo/11650.html 看完本篇需要: 10min 作业练习需要: 0.5h~3h(依练习者对python熟悉程度而定) 看完本 ...
- python开发基础作业01:模拟登陆系统
随老男孩学习python mark 作业要求及提示:编写登录接口 ''' 练习程序:编写登录接口 1. 输入用户名和密码 2. 认证成功后显示欢迎信息 3. 输错三次后锁定 输入三次后退出,下次同样用 ...
- Day3 - Python基础3 函数、递归、内置函数
Python之路,Day3 - Python基础3 本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...
- 第一模块·开发基础-第1章 Python基础语法
Python开发工具课前预习 01 Python全栈开发课程介绍1 02 Python全栈开发课程介绍2 03 Python全栈开发课程介绍3 04 编程语言介绍(一) 05 编程语言介绍(二)机器语 ...
随机推荐
- 【Offer】[47] 【礼物的最大价值】
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 在一个m*n的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于0).你可以从棋盘的左上角开始拿格子里的礼物,并每次向左(以自 ...
- python控制台简单实现五子棋
#棋盘#落子#规则import randomclass chess: def __init__(self): print('#---------------棋盘----------------#') ...
- Java web的基本概念
概念一直是学习计算机软件开发中经常遇到的问题,也是软件行业最喜欢创造的东西.很多时候,学习计算机软件开发遇到困难都是因为对某些概念的不理解,而不是因为技术本身有多么复杂.Java Web作为Java ...
- Go操作MySQL
MySQL是常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库. Go操作MySQL 连接 Go语言中的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的 ...
- Zookeeper内部实现分布式数据一致性(底层系统模型)(一)
Zookeeper的几个概念:(接下来将从这几个概念书写Zookeeper的内部工作流程) 数据模型 节点特性 版本 Watcher ACL <1> 数据模型: Zookeeper的视图很 ...
- AtomicInteger 一个提供原子操作的Integer类
转自:http://www.blogjava.net/freeman1984/archive/2011/10/17/361402.html AtomicInteger,一个提供原子操作的Integer ...
- zookeeper伪集群
Zookeeper运行需要java环境,需要安装jdk,建议本地下载好需要的安装包然后上传到服务器上面,服务器上面下载速度太慢. 上传 [root@192 ~]# java -version java ...
- tcp居然会数据延迟40ms被发送
tcpdump是很好的tcp分析工具,在此配合nc命令来学习tcpdump nc -l 8000 tcpdump -S -n -i lo tcp and host 127.0.0.1 and port ...
- [LeetCode]sum合集
LeetCode很喜欢sum,里面sum题一堆. 1.Two Sum Given an array of integers, return indices of the two numbers suc ...
- Hive窗口函数最全案例详解
语法: 分析函数 over(partition by 列名 order by 列名 rows between 开始位置 and 结束位置) 常用分析函数: 聚合类 avg().sum().max(). ...