目录

1.元组元素求和: b=(1,2,3,4,5,6,7,8,9)

2.输出元组内7的倍数及个位是7的数

3.列表倒数

方法一:

方法二:

4.写代码,有如下列表,利用切片实现每一个功能

(1)通过切片获取新的列表 lst2, lst2=[1,2,4,5]

(2)通过切片获取新的列表 lst3,lst3=[3,’a’,’b’]

(3)通过切片获取新的列表 lst4,lst4=[‘c’]

(4)通过切片获取新的列表 lst5,lst5=[‘b’,’a’,3]

5.列表题

(1)将 aa 变成大写AA。

(2)将列表中的3变成字符串'3'

6.字典

(1)k2对应的值中添加33

(2)k2对应的值的第一个位置插入一个元素‘s’

(3)将(1,2,3,4,5)对应的值添加一个键值对 ‘k4’:’v4’

(4)将(1,2,3,4)对应的值添加一个键值对(1,2,3):‘ok’

(5)将’k3’对应的值的‘wer’改为’qq’。

7.类型转换题目

(1)int和str 如何转换,转换的结果是什么。

(2)int 与bool如何转换,转换的结果是什么。

(3)str 与 list 如何转换,转换的结果是什么。

8.实现下列结果

(1)有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aabbcc

(2)有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aa*bb*cc

(3)有字符串 s='albblcc' 将构造成一个列表 lst=[‘a’,’lbblcc’]

(4)有字符串 s='aab bcc' 构造成列表 lst=[‘aab’,’bcc’]

(5)有字符串s='abcd' 将字符串变成a_b_c_d。

9.使用for循环和while循环打印1-2+3-4+5... +99 的结果

10.使用range()函数打印 100,99,98,...0

11.计算用户输入内容中索引为奇数并且对应的元素的数字的个数(没有则个数为零)

要满足两个条件:

结果:

12.有如下值li = [11, 22, 33, 44, 55, 77, 88, 99, 90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。

13.查找列表中lst中的元素,移除每一个元素的空格,并且找出以’A’或者‘a’开头,并以‘c’结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。

li = ['bajie ', 'axlzC', ' AbC ', '  gsssq  ', '  bobo  ', ' dongdong ', ' aqc']

14.整数加法计算器

方法一:

方法二:


1.元组元素求和: b=(1,2,3,4,5,6,7,8,9)

# 1.元组元素求和: b=(1,2,3,4,5,6,7,8,9)
b = (1, 2, 3, 4, 5, 6, 7, 8, 9)
total = 0
for i in b:total += i
print(total)

2.输出元组内7的倍数及个位是7的数

b=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17)

有两个条件:(1)元素是7的倍数

(2)元素的个位是7

两者是或(or)的关系

# 2.输出元素内7的倍数及个位为7的数
b = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
for i in b:if i % 7 == 0 or i % 10 == 7:print(i)
# 7
# 14
# 17

3.列表倒数

a=[123,4567,12,3456]   输出a=[321,7654,21,6543]

方法一:

使用列表的revese() 函数,逆序输出元素

方法二:

使用字符串的切片,a[::-1]:表示逆序输出元素

# 3.列表倒数
# a=[123,4567,12,3456]  输出a=[321,7654,21,6543]
# 方法一:使用列表的reverse()函数,逆向输出元素
a = [123, 4567, 12, 3456]
b = []
for i in a:i = list(str(i))i.reverse()i = int(''.join(i))b.append(i)
print(b)
# 方法二:使用字符串的切片  a[::-1]:表示逆序输出
a = [123, 4567, 12, 3456]
b = []
for i in a:i = str(i)i = int(i[::-1])b.append(i)
print(b)

4.写代码,有如下列表,利用切片实现每一个功能

lst=[1,3,2,’a’,4,’b’,5,’c’]

(1)通过切片获取新的列表 lst2, lst2=[1,2,4,5]

(2)通过切片获取新的列表 lst3,lst3=[3,’a’,’b’]

(3)通过切片获取新的列表 lst4,lst4=[‘c’]

(4)通过切片获取新的列表 lst5,lst5=[‘b’,’a’,3]

# 4、写代码,有如下列表,利用切片实现每一个功能。
# lst=[1,3,2,’a’,4,’b’,5,’c’]
# (1).通过切片获取新的列表 lst2, lst2=[1,2,4,5]
lst = [1, 3, 2, 'a', 4, 'b', 5, 'c']
lst2 = lst[0::2]
print(lst2)
# (2).通过切片获取新的列表 lst3,lst3=[3,’a’,’b’]
lst3 = lst[1:6:2]
print(lst3)
# (3).通过切片获取新的列表 lst4,lst4=[‘c’]
lst4 = lst[-1]
print(lst4)
# (4).通过切片获取新的列表 lst5,lst5=[‘b’,’a’,3]
lst5 = lst[-3::-2]
print(lst5)

5.列表题

lis = [['k', ['qqq', 20, {'k1': ['aa', 3, '1']}, 33], 'xx']]

(1)将 aa 变成大写AA。

(2)将列表中的3变成字符串'3'

# 2、列表题
lis = [['k', ['qqq', 20, {'k1': ['aa', 3, '1']}, 33], 'xx']]
# (1).将 aa 变成大写AA。
lis[0][1][2]['k1'][0] = 'AA'
print(lis)  # [['k', ['qqq', 20, {'k1': ['AA', 3, '1']}, 33], 'xx']]
# (2).将列表中的3变成字符串‘3’
lis[0][1][2]['k1'][1] = '3'
print(lis)  # [['k', ['qqq', 20, {'k1': ['AA', '3', '1']}, 33], 'xx']]

6.字典

dic = {'k1': 'v1', 'k2': ['sb', 'aa'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}

(1)k2对应的值中添加33

(2)k2对应的值的第一个位置插入一个元素‘s’

(3)将(1,2,3,4,5)对应的值添加一个键值对 ‘k4’:’v4’

(4)将(1,2,3,4)对应的值添加一个键值对(1,2,3):‘ok’

(5)将’k3’对应的值的‘wer’改为’qq’。

# 6.字典dic = {'k1': 'v1', 'k2': ['sb', 'aa'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
dic = {'k1': 'v1', 'k2': ['sb', 'aa'], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
# (1). k2对应的值中添加33
dic['k2'].append(33)
print(dic)  # {'k1': 'v1', 'k2': ['sb', 'aa', 33], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
# (2).k2对应的值的第一个位置插入一个元素‘s’
dic['k2'].insert(0, 's')
print(dic)  # {'k1': 'v1', 'k2': ['s', 'sb', 'aa', 33], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer']}}
# (3).将(1,2,3,4,5)对应的值添加一个键值对 ‘k4’:’v4’
dic[(1, 2, 3, 4, 5)]['k4'] = 'v4'
print(dic)  # {'k1': 'v1', 'k2': ['s', 'sb', 'aa', 33], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer'], 'k4': 'v4'}}
# (4).将(1,2,3,4,5)对应的值添加一个键值对(1,2,3):‘ok’
dic[(1, 2, 3, 4, 5)][(1, 2, 3)] = 'ok'
print(dic)
# {'k1': 'v1', 'k2': ['s', 'sb', 'aa', 33], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'wer'], 'k4': 'v4', (1, 2, 3): 'ok'}}
# (5).将’k3’对应的值的‘wer’改为’qq’。
dic[(1, 2, 3, 4, 5)]['k3'][-1] = 'qq'
print(dic)
# {'k1': 'v1', 'k2': ['s', 'sb', 'aa', 33], (1, 2, 3, 4, 5): {'k3': ['2', 100, 'qq'], 'k4': 'v4', (1, 2, 3): 'ok'}}

7.类型转换题目

(1)int和str 如何转换,转换的结果是什么。

(2)int 与bool如何转换,转换的结果是什么。

(3)str 与 list 如何转换,转换的结果是什么。

空字符串,空列表,空元组,空字典,空集合--------->都是False:0

''    ""            []             ()           {}            set()

其余都是True

# 7、类型转换题目
# (1).int和str 如何转换,转换的结果是什么。
# int-------------------->str
num = 10
str1 = str(num)
print(str1)  # 10
print(type(str1))  # str    字符串
# str--------------------->int
str1 = '10'
num1 = int(str1)
print(num1)  # 10
print(type(num1))  # int  整形
# (2).int 与bool如何转换,转换的结果是什么。
# int---------------------->bool
num = 10
bool1 = bool(num)
print(bool1)  # True
print(type(bool1))  # bool    布尔型
# bool--------------------->int
bool1 = False
num1 = int(bool1)
print(num1)  # 0
print(type(num1))  # int    整形
# (3).str 与 list 如何转换,转换的结果是什么。
str1 = 'hello'
lst = list(str1)
print(lst)  # ['h', 'e', 'l', 'l', 'o']
print(type(lst))  # list   列表
# list--------------------->str
lst = [1, 2, 3]
str1 = str(lst)
print(str1)  # [1, 2, 3]
print(type(str1))  # str    字符串

8.实现下列结果

(1)有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aabbcc

(2)有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aa*bb*cc

(3)有字符串 s='albblcc' 将构造成一个列表 lst=[‘a’,’lbblcc’]

(4)有字符串 s='aab bcc' 构造成列表 lst=[‘aab’,’bcc’]

(5)有字符串s='abcd' 将字符串变成a_b_c_d。

# 8.实现下列结果
# (1)  .有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aabbcc
li = ['aa', 'bb', 'cc']
li = ''.join(li)  # 用join()方法,将列表中的每一元素用''拼接起来
print(li)
# (2).有列表li=['aa','bb','cc'],将该列表构造成一个字符串 aa*bb*cc
li = ['aa', 'bb', 'cc']
li = '*'.join(li)  # 用'*'连接列表中的每一个元素
print(li)
# (3).有字符串 s='albblcc' 将构造成一个列表 lst=[‘a’,’lbblcc’]
s = 'albblcc'
lst = s.split('l', maxsplit=1)  # 使用一个l进行切割
print(lst)
# (4).有字符串 s='aab bcc' 构造成列表 lst=[‘aab’,’bcc’]
s = 'aab bcc'
lst = s.split(' ')
print(lst)
# (5) .有字符串s='abcd' 将字符串变成a_b_c_d。
s='abcd'
s='_'.join(s)
print(s)

9.使用for循环和while循环打印1-2+3-4+5... +99 的结果

# 9.使用for循环和while循环打印1-2+3-4+5... +99 的结果
# for 循环
total = 0
for i in range(1, 100):if i % 2 == 0:total -= ielse:total += i
print('1-2+3-4+5....+99=', total)  # 1-2+3-4+5....+99= 50
# while循环
i = 1
total = 0
while i <= 99:if i % 2 == 0:total -= ielse:total += ii += 1
print('1-2+3-4+5.....+99=', total)
# 不用if 判断语句,用数学思想
total = 0
for i in range(1, 100):total = total + i * ((-1) ** (i + 1))
print('1-2+3-4+5.....+99=', total)

10.使用range()函数打印 100,99,98,...0

# 10.使用range()函数打印 100,99,98,...0
for i in range(100, -1, -1):print(i)

11.计算用户输入内容中索引为奇数并且对应的元素的数字的个数(没有则个数为零)

要满足两个条件:

(1)输入的内容的索引为奇数

(2)该索引对应的内容是数字

结果:

统计满足上述两个条件的输入内容出现的次数

# 11.计算用户输入内容中索引为奇数并且对应的元素的数字的个数(没有则个数为零)
num = 0
str1 = input('请输入内容:')
for index, value in enumerate(str1, start=1):if index % 2 == 0 and value.isdigit():num += 1
print(value, num)

12.有如下值li = [11, 22, 33, 44, 55, 77, 88, 99, 90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。

1.根据题意,首先要有一个字典:dic={}

2.大于或者小于66的数都有好几个,选择用列表来存放

大于66的放在:max_list

小于66的放在:min_list

3.把max_list,min_list 放在字典 dic{}中

# 12.有如下值li = [11, 22, 33, 44, 55, 77, 88, 99, 90],
# 将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。
li = [11, 22, 33, 44, 55, 77, 88, 99, 90]
max_list = []  # 用来存放大于66的所有的值
min_list = []  # 用来存放小于66的所有的值
dic = {}  # 用来存放max_list   min_list
for i in li:if i > 66:max_list.append(i)else:min_list.append(i)
dic['max_list'] = max_list
dic['min_list'] = min_list
print(dic)

13.查找列表中lst中的元素,移除每一个元素的空格,并且找出以’A’或者‘a’开头,并以‘c’结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。

li = ['bajie ', 'axlzC', ' AbC ', '  gsssq  ', '  bobo  ', ' dongdong ', ' aqc']

(1)先去掉列表每一项的空格

(2)判断是否以'a'或者是'A'开头,且以'c'结尾

求开头和结尾的方法:

(1)利用索引:开头   i[0]       结尾    i[-1]

(2)利用方法:开头    i.startswith()         结尾    i.endwith()

# 13.查找列表中lst中的元素,移除每一个元素的空格,并且找出以’A’或者‘a’开头,并
# 以‘c’结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。
# 方法一:利用索引
li = ['bajie ', 'axlzC', ' AbC ', '  gsssq  ', '  bobo  ', ' dongdong ', ' aqc']
b = []
for i in li:i = i.replace(' ', '')if i[0].upper() == 'A' and i[-1] == 'c':b.append(i)
print(b)  # ['aqc']
# 方法二:利用方法
li = ['bajie ', 'axlzC', ' AbC ', '  gsssq  ', '  bobo  ', ' dongdong ', ' aqc']
b = []
for i in li:i = i.replace(' ', '')if (i.startswith('a') or i.startswith('A')) and i.endswith('c'):b.append(i)
print(b)  # ['aqc']

14.整数加法计算器

例如用户输入:5+8+21...(最少输入2个数相加),然后进行分割再进行计算,将最后的计算结果添加到字典中(替换None)。

dic={‘最终结果’:None}

方法一:

先用split()函数把字符串中的数字分割出来,然后求和

方法二:

使用eval()函数:用来计算在字符串中的有效python表达式,并返回一个值

# 14.整数加法计算器
# 例如用户输入:5+8+21...(最少输入2个数相加),然后进行分割再进行计算,将最后的计算结果添加到字典中(替换None)。
# dic={‘最终结果’:None}
# 方法一:
total = 0
ret = input('请用户输入加法表达式:')
str1 = ret.split('+')
for i in str1:i = int(i)total += i
print(ret, '=', total)
# 方法二:使用eval()函数:
ret = input('请输入加法表达式:')
ret = eval(ret)
print(ret)


Python列表,元组,字典,集合 练习相关推荐

  1. python列表元组字典集合实验心得_python学习小总结(列表、元组、字典、集合、字符串)...

    ---恢复内容开始--- 一.列表(list) 1.添加 append():追加,在列表末尾添加元素. 列表名.append(添加的元素) extend():扩展,在列表末尾添加元素. 列表名.ext ...

  2. Python 列表元组字典集合

    列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...

  3. Python列表/元组/字典/集合详解

    本文是对Python中的列表.元组.字典.集合知识的梳理总结,将Python的重要知识点梳理成条,通过一个简单的员工管理系统(EMS)实战,可以深入的了解Python的基本知识.本文基本上涵盖了在日常 ...

  4. python中列表 元组 字典 集合的区别

    参考文章:python中列表 元组 字典 集合的区别

  5. Python列表,元组,字典的区别

    Python列表,元组,字典的区别: 1.元组是不可变的, 而列表.字典是可变的.元组是不可变对象,对象一旦生成,它的值将不能更改:列表是可变对象,对象生成后,可以对其元素进行更改.添加.删除.清空. ...

  6. python_列表——元组——字典——集合

    列表--元组--字典--集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  7. python列表添加元素的三种方法定义集合数据对象_(1) List,tuple,dictionary,Python语法基础集,一,之,列表,元组,字典,集合...

    Python序列(列表.元组.字典.集合) 一.列表(List)与列表推导式 (一)列表(list) 1.列表是Python内置 可变序列 (列表中元素可增加删除或修改): 2.列表元素放在一对中括号 ...

  8. python入门——列表+元组+字典+集合

    列表 列表是最常用的python数据类型,它可以作为一个方括号内的逗号分隔值出现. 列表的数据项不需要具有相同的类型 1.列表嵌套(相当于二维数组) a=["b",'c','d'] ...

  9. Python基础-元组字典集合

    文章目录 一.tuple元组 1.概述 2.创建元组 3.元组元素的访问 4.元组操作 5.元组功能 6.二维元组 二.字典dict 1.概念 2.定义字典 三.set集合 1.概述 2.创建 3.操 ...

  10. python 数据类型:整型 字符串 布尔值 列表 元组 字典 集合

    不可变类型:整型 字符串 整型 字符串 可变类型:列表 字典 一.列表常用命令 #增删改查 #查  切片 [] # print(a[1:])#取到最后 # print(a[1:-1])#取到倒数第二值 ...

最新文章

  1. 【原创】大叔案例分享(3)用户行为分析--见证scala的强大
  2. tril--下三角矩阵的抽取
  3. Java程序员面试必备的一些流程图
  4. 面向对象上机题-迭归算法
  5. oracle树状排序,Oracle树状结构查询
  6. 小隐隐于野:基于TCP反射DDoS攻击分析
  7. STM32学习——GPIO的操作
  8. 安防无战事:一场 10213 亿元的误会
  9. 掌握 cinder-scheduler 调度逻辑 - 每天5分钟玩转 OpenStack(48)
  10. ram_flash驱动
  11. 字符串、数组处理方法总结
  12. Linux C++线程池框架
  13. Linux下硬盘分区详解
  14. 基于springboot社区疫情防控管理系统
  15. 2021-10-18
  16. 最历害的硬盘修复工具PC3000,可重置SMART状态!
  17. python增量爬虫_python网络爬虫——增量式爬虫
  18. Android Studio修改主题设置主题背景图片
  19. (转)Weblogic 8.1的安装与配置
  20. python判断邮箱格式是否正确_如何判断用户输入的邮箱格式是否正确?

热门文章

  1. Lock-step 锁步核有哪些
  2. 乐高 计算机泡泡龙教案,泡泡龙
  3. Intel公布Penryn四核CPU价格 最低209美元
  4. 自适应阈值(adaptiveThreshold)分割原理及实现
  5. CSS3 transform变形属性、2D变形、3D变形
  6. 为什么 Vue 更符合这个时代的大势所趋
  7. 嵌入式系统常用词汇统计表
  8. 阅读 《图解密码技术 第三版》的归纳和总结
  9. 缺少编解码器,错误代码0xc00d5212 WIN10中AVI格式文件无法播放
  10. 【图像增强】基于Step和Polynomial 滤波实现图像增强附matlab代码