python27期day04:列表、元组、range、作业题。
1、for循环套for循环:
for i in "abc":
for x in "egf:
print(x)
结果是:e
g
f
e
g
f
e
g
f
2、99乘法表:
for m in range(1,10):
for n in range(1,m+1):
print('%s×%s=%s'%(m,n,m*n),end=' ')
print()
结果如下:
1×1=1
2×1=2 2×2=4
3×1=3 3×2=6 3×3=9
4×1=4 4×2=8 4×3=12 4×4=16
5×1=5 5×2=10 5×3=15 5×4=20 5×5=25
6×1=6 6×2=12 6×3=18 6×4=24 6×5=30 6×6=36
7×1=7 7×2=14 7×3=21 7×4=28 7×5=35 7×6=42 7×7=49
8×1=8 8×2=16 8×3=24 8×4=32 8×5=40 8×6=48 8×7=56 8×8=64
9×1=9 9×2=18 9×3=27 9×4=36 9×5=45 9×6=54 9×7=63 9×8=72 9×9=81
3、列表--Python中数据结构之一
lst = [1,"alex"] 每个元素用逗号分隔
列表的作用(容器):存储大量数据、存储不同数据类型的数据、每一个内容是一个元素。
4、append在末尾追加:
lst = ["python学习手册","核心编程"]
print(lst.append("流畅的python") #这是打印往书包里面增加书的动作
print(lst) #打印书包
5、图解如下:
6、insert插入:参数1是要插入位置的下标、参数2是要插入的内容、尽量少使用insert、
7、extend()扩展(迭代添加)、不能添加整型数字
8、remove通过元素名删除、从左向右、一次只能删除一个。
9、pop默认删除列表中最后一个并且有返回值、返回的内容是被删除的元素、通过索引pop(1)进行删除、
10、clear清空
11、del删除整个列表、加索引:del li[1:3]
12、修改图解:
13、使用切片时、获取的内容就是切片的原数据本身。
14、切片获取的内容空间是连续的时候、修改时内容可以多可以少。
15、切片获取的内容空间是不连续的时候、修改时内容必须一一对应。
16、列表是可变数据类型、可迭代数据类型、有序的数据结构。
17、列表嵌套
18、元组就是一个不可变的列表。
19、元组是一个有序、可迭代、不可变数据类型。
20、元组的应用场景:为了防止误操作时修改数据、元组中存放一些重要数据。
21、配置文件中存储数据。
22、range()范围、使用步长添加位置。
作业题:
#23、写代码,有如下列表,按照要求实现每一个功能
li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
# 计算列表的长度并输出
print(len(li))
for i in li:
print(i)
# 列表中追加元素"seven",并输出添加后的列表
a = li.append("seven")
print(li)
# 请在列表的第1个位置插入元素"Tony",并输出添加后的列表
li.insert(1,"Tony")
print(li)
# 请修改列表第2个位置的元素为"Kelly",并输出修改后的列表
li[2] = "Kelly"
print(li)
# 请将列表l2=[1,"a",3,4,"heart"]的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
l2=[1,"a",3,4,"heart"]
li.extend(l2)
print(li)
print(li.extend(l2))
# 请将字符串s = "qwert"的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
s = "qwert"
li.extend(s)
print(li)
# 请删除列表中的元素"ritian",并输出添加后的列表
li.remove("ritian")
print(li)
# 请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表
a = li.pop(1)
print(a)
print(li)
# 请删除列表中的第2至4个元素,并输出删除元素后的列表
del li[1:3]
print(li)
# 24、写代码,有如下列表,利用切片实现每一个功能
li = [1, 3, 2, "a", 4, "b", 5,"c"]
# 通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
print(li[:3])
# 通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
print(li[3:6])
# 通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5]
print(li[::2])
# 通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
print(li[1:7:2])
# 通过对li列表的切片形成新的列表l5,l5 = ["c"]
print(li[-1])
# 通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]
print(li[-3::-2])
# 25、写代码,有如下列表,按照要求实现每一个功能。
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
# 将列表lis中的"tt"变成大写(用两种方式)。
lis[3][2][1][0] = "TT"
print(lis)
# 将列表中的数字3变成字符串"100"(用两种方式)。
#第一种方式:
lis[1] = str(100)
print(lis)
print(type(lis[1]))
#第二种方式:
# lis[2][2][1][1] = str(lis[2][2][1][1] + 97)
# 将列表中的字符串"1"变成数字101(用两种方式)。
lis[3][2][1][2] = 101
print(lis)
# 26、请用代码实现:
li = ["alex", "wusir", "taibai"]
# 利用下划线将列表的每一个元素拼接成字符串"alex_wusir_taibai"
print("_".join(li))
# 27、利用for循环和range打印出下面列表的索引。
li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
for i in range(len(li)):
print(i)
# 28、利用for循环和range找出100以内所有的偶数并将这些偶数插入到一个新列表中。
li = []
for i in range(101):
if i % 2 == 0:
li.append(i)
print(li)
# 29、利用for循环和range 找出50以内能被3整除的数,并将这些数插入到一个新列表中。
#第一种写法:
lis = []
for i in range(0,50):
if i % 3 == 0:
lis.append(i)
print(lis)
#第二种写法:
lst = []
for i in range(0,50,3):
lst.append(i)
print(lst)
# 30、利用for循环和range从100~1,倒序打印。
for i in range(100,0,-1):
print(i)
# 31、利用for循环和range从100~10,倒序将所有的偶数添加到一个新列表中,然后对列表的元素进行筛选,将能被4整除的数留下来。
li1 = []
for i in range(100,9,-1):
if i % 2 == 0 and i % 4 == 0:
li1.append(i)
print(li1)
# 32、利用for循环和range,将1-30的数字一次添加到一个列表中,并循环这个列表,将能被3整除的数改成*。
lis = []
index = 0
for i in range(30):
lis.append(i)
for i in lis:
if i % 3 == 0:
lis[index] = "*"
index += 1
print(lis)
# 33、查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。
li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
#第一种写法先替换再添加:
lis = []
for j in li:
i = j.replace(" ","")
if (i.startswith("A") or i.startswith("a")) and i.endswith("c"):
lis.append(i)
print(lis)
#第二种写法先判断再去除空白添加:
for k in li:
if (k.strip().startswith("A") or k.strip().startswith("a")) and k.strip().endswith("c"):
lis.append(k.strip())
print(lis)
# 34、开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:敏感词列表 li = ["老师苍", "东京比较热", "武兰", "波多"]、则将用户输入的内容中的敏感词汇替换成等长度的*(老师苍就替换***),并添加到一个列表中;如果用户输入的内容没有敏感词汇,则直接添加到上述的列表中。
li = ["老师苍", "东京比较热", "武兰", "波多"]
lst = []
content = input("请输入内容:") #今天的东京比较热老师苍就去找波多一起打武兰
for i in li:
if i in content:
content = content.replace(i,len(i) * "**")
lst.append(content)
print(lst)
# 35、有如下列表(选做题)
li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
# 循环打印列表中的每个元素,遇到列表则再循环打印出它里面的元素。
#第一种写法函数式:
def task(li):
for i in li:
if type(i) != list:
print(i)
else:
task(i)
task(li)
#第二种写法isinstance判断:
for x in li:
if isinstance(x, list):
for y in x:
print(y)
else:
print(x)
#第三种写法:range和len
for y in range(len(li)):
if isinstance(li[y], list):
for z in li[y]:
print(z)
else:
print(li[y])
#第四种写法:for循环和if判断式
for i in li:
if type(i) == list:
for j in i:
if type(j) == str:
j = j.lower()
print(j)
else:
if type(i) == str:
i = i.lower()
print(i) #print缩进去只打印字符串、不缩进去打印字符串和数字
# 我想要的结果是:
# 1
# 3
# 4
# alex
# 3
# 7
# 8
# taibai
# 5
# ritian
#36、for循环最外层默认打印可迭代的最后一个元素
# for i in "abc":
# pass
# print(i)
python27期day04:列表、元组、range、作业题。的更多相关文章
- 巨蟒python全栈开发-第4天 列表&元组&range
今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...
- day04 python列表 元组 range()
day04 python 一.列表 1.什么是列表 列表是可变的数据类型: 和字符串不同, 做的操作直接改源数据 列表由[]来表示, 每项元素用逗号隔开.列表什么都能装,能装对象的 ...
- python笔记(1)--序列(列表 元组 range)
一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...
- 列表 元组 range
2019 年 7 月 9 日 列表---list------容器 列表:存储数据,支持多个数据类型,比如 :字符串 数字 布尔值 列表 集合 元组 特点 : 有序 可变 支持索引 (定义一个列表不 ...
- day04——列表、元组、range
day04 列表 列表--list 有序,可变,支持索引 列表:存储数据,支持的数据类型很多:字符串,数字,布尔值,列表,集合,元组,字典,用逗号分割的是一个元素 id() :获取对象的内存地址 ...
- python27期day12:推导式、内置函数、高阶函数、匿名函数、作业题
1.推导式:做一些有规律的数据结构 列表推导式: 普通循环模式: [加工后的变量 for 循环] 示例一:print([i for i in range(1,51)]) 结果:[1, 2, 3, 4, ...
- 列表,元组以及range
列表,元组以及range 一.列表(list) 列表是数据类型之一,它有序,可变,支持索引 作用:存储数据,支持的数据类型很多:字符串,数字,布尔值,列表等 # 定义一个列表 lst = ['alex ...
- Python成长之路第二篇(2)_列表元组内置函数用法
列表元组内置函数用法list 元组的用法和列表相似就不一一介绍了 1)def append(self, p_object):将值添加到列表的最后 # real signature unknown; r ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
随机推荐
- LG4051/BZOJ1031 「JSOI2007」字符加密 后缀数组
问题描述 BZOJ1031 LG4051 题解 发现这是一个环,根据经验,破环为链,于是字符环变为了字符串 之后对这个复制之后的字符串求后缀数组. $len$代表原字符串长度,代表复制后的字符串长度 ...
- 第十周计划周二&周三计划
今天又一次被导师训了,怎么也达不到他的要求,好像我俩不在一条线上.所以现在重新整理一遍思路,继续走. 我认为重点还是主题追踪这一块,但是主题追踪的结果以及显示是个问题,目前还是打算做出来当天最热的前几 ...
- jdbc工具类是多例的
一直以为他 是单例的, 以为创建个工具类就是为了单例, 节省效率 , 其实 是为了封装代码, 简洁 ! 还有重要一点 : 所欲工具类里面不要抛异常 要捕捉异常 !
- 【2019.8.9 慈溪模拟赛 T1】数论(a)(打表找规律)
莫比乌斯反演 血亏! 比赛时看到这题先写了个莫比乌斯反演,然后手造了几组数据和暴力对拍的时候发现,居然答案就是\(nm\)... 吐槽数据范围太小... 下面给上出题人对此题的解释: 原式的物理意义, ...
- 记录错误or日记(更新中)
前言: 从2018.8-17开始记录 本篇随笔记录做题时的小错误(大多数),考试总结(懒得总结了),做过的每个题的错误 2019.12.7 傻逼学校,给我三个小时假期给你们做题挣工资 2019.11. ...
- 入门理解mysql-binlog
mysql-binlog简介: mysql的二进制日志记录了所有DDL和DML(除select) 开启binlog日志后会有1%左右的的性能损耗 二进制日志包括两类 索引文件 XXXX.index 日 ...
- Java的POJO和JavaBean的区别
POJO Plain Ordinary Java Object,即简单的java对象. 特点 需要有一些 private 的参数,以及针对参数的 setter 和 getter 方法来访问这些参数. ...
- Docker学习(六)-Kubernetes - Spring Boot 应用
接上一篇 https://www.cnblogs.com/woxpp/p/11872155.html 新建 k8s-demo.yaml apiVersion: apps/v1beta2 kind: D ...
- Eureka配置
介绍 SpringCloud是一个完整的微服务治理框架,包括服务发现和注册,服务网关,熔断,限流,负载均衡和链路跟踪等组件. SpringCloud-Eureka主要提供服务注册和发现功能.本文提供了 ...
- Redis set集合
Set操作.Set集合就是不允许重复的列表 (无序集合) sadd(name,values) # name对应的集合中添加元素 scard(name) # 获取name对应的集合中元素个数 sdiff ...