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基础作业(一)的更多相关文章

  1. python基础作业1

    目录 附加练习题(提示:一步步拆解) 1.想办法打印出jason 2.想办法打印出大宝贝 3.想办法打印出run 4.获取用户输入并打印成下列格式 5 根据用户输入内容打印其权限 6 编写用户登录程序 ...

  2. Day 03 Python 基础

    目录 Pycharm 的使用 设置 快捷键 变量 什么是变量 定义变量 变量名的命名规则 变量名的两种命名方式 注释 快捷键(快速注释) 单行注释 多行注释 注释的作用 Turtle库的使用 Pych ...

  3. 03 Python基础

    1.输出和输入 (1)print打印 Python 提供print方法来打印信息 输入: print ("hello python") 调用print方法,用户双引号(" ...

  4. python基础作业2

    目录 编写一个用户认证装饰器 利用有参装饰器编写多种用户登录校验策略 利用递归函数依次打印列表中每一个数据值 获取用户权限并校验用户登录 编写一个用户认证装饰器 """ ...

  5. python基础一之课后作业:编写登录接口

    1 # Author : Mamba 2 3 #python基础一之课后作业:编写登录接口 4 5 # 输入用户名密码 6 # 认证成功后显示欢迎信息 7 # 用户名3次输入错误后,退出程序 8 # ...

  6. python基础 实战作业 ---Excel基本读写与数据处理

    代码地址如下:http://www.demodashi.com/demo/11650.html 看完本篇需要: 10min 作业练习需要: 0.5h~3h(依练习者对python熟悉程度而定) 看完本 ...

  7. python开发基础作业01:模拟登陆系统

    随老男孩学习python mark 作业要求及提示:编写登录接口 ''' 练习程序:编写登录接口 1. 输入用户名和密码 2. 认证成功后显示欢迎信息 3. 输错三次后锁定 输入三次后退出,下次同样用 ...

  8. Day3 - Python基础3 函数、递归、内置函数

    Python之路,Day3 - Python基础3   本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8. ...

  9. 第一模块·开发基础-第1章 Python基础语法

    Python开发工具课前预习 01 Python全栈开发课程介绍1 02 Python全栈开发课程介绍2 03 Python全栈开发课程介绍3 04 编程语言介绍(一) 05 编程语言介绍(二)机器语 ...

随机推荐

  1. 深入vue源码,了解vue的双向数据绑定原理

    大家都知道vue是一种MVVM开发模式,数据驱动视图的前端框架,并且内部已经实现了双向数据绑定,那么双向数据绑定是怎么实现的呢? 先手动撸一个最最最简单的双向数据绑定 <div> < ...

  2. 深入拆解Java虚拟机视频教程

    目录: 第1节说在前面的话   00:05:07分钟   | 第3节环境搭建以及jdk,jre,jvm的关系   00:20:48分钟   | 第5节jvm再体验-jvm可视化监控工具   00:21 ...

  3. Java反序列化漏洞原理解析(案例未完善后续补充)

    序列化与反序列化 序列化用途:方便于对象在网络中的传输和存储 java的反序列化 序列化就是将对象转换为流,利于储存和传输的格式 反序列化与序列化相反,将流转换为对象 例如:json序列化.XML序列 ...

  4. Winform中使用代码编写Button按钮的点击事件

    场景 一般在进行Winform窗体开发时都会拖拽一个Button,然后双击进入Button按钮的点击事件中,进行 点击事件的编写. 如果窗体上事先没有Button按钮,是在代码中生成的Button按钮 ...

  5. Session的创建和设置

    1.Session的获取: (1)无参的方法: protected void doGet(HttpServletRequest request, HttpServletResponse respons ...

  6. CSS——样式表的引入

    1.内部样式表 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <t ...

  7. DBCP

    DBCP(DataBase Connection Pool)数据库连接池,由Apache公司开发.连接池的运用避免了反复建立连接造成的资源浪费,预先建立一些连接放在数据库连接池中,需要时取出,不需要时 ...

  8. 小斌之SpringCloud 开发某某交易所

    最近一个月都在弄某某交易所,让之前学的东西能够用上,在这里分享一下收货的东西吧 #### 简介 系统是进行了二次开发,用的是ZTuo开源框架第一个版本,节省了很多时间(坑也挺多,哈哈哈),文章结尾贴源 ...

  9. 集合ArrayList分析

    目录 ArrayList 描述 重要的对象 遍历使用 与Collection关系 ArrayList属性 扩展:什么是序列化 transient关键字解析 ArrayList构造方法 无参构造 int ...

  10. select2的多选下拉框上传

    1.加入multiple: true,属性实现多选下拉框样式 2.下拉框选择后的值是数组类型不要经过数据处理才能进行表单提交 提交的时候原下拉框所在的标签不提交,而是将多选后的值存入页面中的一个隐藏标 ...