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. Js、layui获取单选框radio的几种方法

    首先,编写HTML如下:   <form id="form1">         <table  border="0">        ...

  2. 【Redis】SpringBoot+Redis+Ehcache实现二级缓存

    一.概述 1.1 一些疑惑? 1.2 场景 1.3 一级缓存.两级缓存的产生 1.4 流程分析 二.项目搭建 一.概述 1.1 一些疑惑? Ehcache本地内存 Redis 分布式缓存可以共享 一级 ...

  3. mariadb 远程访问报:Host xxx is not allowed to connect to this MariaDb server

    刚开始试的是: 结果报错了,哎,这折腾的. 继续折腾,加个密码试试: 再用Navicat试试,果然成功了.

  4. java8函数式接口详解、函数接口详解、lambda表达式匿名函数、方法引用使用含义、函数式接口实例、如何定义函数式接口

    函数式接口详细定义 函数式接口只有一个抽象方法 由于default方法有一个实现,所以他们不是抽象的. 如果一个接口定义了一个抽象方法,而他恰好覆盖了Object的public方法,仍旧不算做接口的抽 ...

  5. WEB应用中普通java代码如何读取资源文件

    首先: 资源文件分两种:后缀.xml文件和.properties文件 .xml文件:当数据之间有联系时用.xml .properties文件:当数据之间没有联系时用.properties 正题:   ...

  6. FreeSql (二十四)Linq To Sql 语法使用介绍

    原本不支持 IQueryable 主要出于使用习惯的考虑,如果继承 IQueryable,编写代码的智能总会提示出现一堆你不想使用的方法(对不起,我有强迫症),IQueryable 自身提供了一堆没法 ...

  7. Knative 实战:三步走!基于 Knative Serverless 技术实现一个短网址服务

    短网址顾名思义就是使用比较短的网址代替很长的网址.维基百科上面的解释是这样的: 短网址又称网址缩短.缩短网址.URL 缩短等,指的是一种互联网上的技术与服务,此服务可以提供一个非常短小的 URL 以代 ...

  8. response对响应的设置

    1.response对象设置响应行状态码: protected void doGet(HttpServletRequest request, HttpServletResponse response) ...

  9. Linux遇到的问题-记录

    Linux遇到的问题 2019-04-09以前: Linux&Win双系统下时间显示不正常的问题 一般安装了双系统(Linux+Windows)就很容易出现问题,Windows是直接取硬件时间 ...

  10. Hadoop 之 深入探索MapReduce

    1.MapReduce基础概念 答:MapReduce作业时一种大规模数据的并行计算的便程模型.我们可以将HDFS中存储的海量数据,通过MapReduce作业进行计算,得到目标数据. 2.MapRed ...