首页 > 其他分享 >Day09-公共操作与推导式

Day09-公共操作与推导式

时间:2023-02-04 16:11:45浏览次数:38  
标签:Day09 推导 公共 list 列表 l1 print 元组 data

一、公共操作

 操作方法

 功能

 描述

 操作类型

 +    

 合并

 将两个相同类型序列进行连接

 字符串、列表、元组

 *

 复制

 将里面的数据进行复制

 字符串、列表、元组

 len

 获取序列长度

 查看序列长度

 字符串、列表、元组、字典,集合

 reversed

 倒置

 将容器里面的数据倒置

 字符串、列表、元组、字典

 max,min

 最大最小值

 求容器数据的最大最小值

 字符串、列表、元组、字典,集合

 sum

 求和

 将容器的数据求和

 列表、元组、字典,集合

 enumerate

 索引映射

 将索引映射给容器里面的数据

 列表、元组、或字符串

 in,not in

 是否存在

 判断数据是否存在于容器内

 字符串、列表、元组、字典,集合

 del

 删除

 删除变量或者指定容器内数据

 变量,容器里面的值

1、 + 合并  将两个相同类型序列进行连接  字符串,列表,元组
# l1 = [1, 2, 3]
# l2 = [4, 5, 6]
# print(l1 + l2)  # [1, 2, 3, 4, 5, 6]

2、 * 复制  将里面的数据进行复制  字符串,列表,元组
# l1 = [1, 2, 3]
# print(l1 * 3)  # [1, 2, 3, 1, 2, 3, 1, 2, 3]

3、 len 获取序列长度 查看序列长度  字符串,列表,元组,字典,集合
# print(len([1, 2, 3]))  # 3  # 返回一个int类型

4、 reversed 倒置   将窗口里面的数据倒置  字符串,列表,元组,字典
# l1 = [1, 2, 3]
# # print(reversed(l1))  # <list_reverseiterator object at 0x00914210>
# print(list(reversed(l1)))  # 转换为列表使用或者for循环使用
# for i in reversed(l1):
#     print(i)

 区别:
# l1 = [1, 2, 3]
# l1.reverse()
# print(l1)   #[3, 2, 1]

# l1 = [1, 2, 3]
# reversed(l1)    # 公共操作,生成一个新的列表,原列表无影响
# print(l1)   #[1, 2, 3]

5、in, not in 是否存在   判断是否存在于容器内 字符串,列表,元组,字典,集合
# l1 = ['小明', '小芳']
# print('小' in l1)  # False
# print('小明' in l1)  # True

6、 del 删除    删除变量或者指定容器内数据  变量,容器里面的值
# l1 = ['小明', '小芳']
# del l1[0]
# print(l1)  # ['小芳']

7、 max, min 最大最小值    求容器数据的最大最小值  字符串,列表,元组,字典,集合
# l1 = [1, 2, 3]
# print(max(l1), min(l1))  # 3 1
# l1 = ['1', '2', '3']
# print(max(l1), min(l1))  # 3 1
# l1 = ['aa', 'ay', 'az']  # 按照位依次判断ASCII码值,
# print(max(l1), min(l1))  # az aa

8、 sum 求和    将容器的数据求和  列表,元组,字典,集合
# d = {1: 2, 2: 3}  # 3,仅数字类的key进行求和
# print(sum(d))

# l1=[1,3,5,7,9]
# print(sum(l1))  # 25

9、 enumerate 枚举,索引映射     将索引映射给窗口里面的数据  列表,元组,字符串
# 需要用到循环次数的时候,使用此枚举
l1 = ['a', 'b', 'c']
# print(enumerate(l1))   #<enumerate object at 0x00918F58> #转换觉数据类型 for循环使用
# print(list(enumerate(l1)))  #[(0, 'a'), (1, 'b'), (2, 'c')]

# for i in enumerate(l1):
#     print(i)     #[(0, 'a'), (1, 'b'), (2, 'c')]

# for index,data in enumerate(l1):
# # for index, data in enumerate(l1, start=5):  # 5 a,6 b,7,c #start= 开始的索引值
#     print(index, data)

二、容器类型转换
 所有数据类型都可以转换为字符串

 转换为集合的时候需要注意数据的去重

三、推导式应用

1、列表推导式

# 普通写法

list_data = []

for i in range(10):

     list_data.append(i)

print(list_data)

# 推导式写法

list_data = [i for i in range(10)]

print(list_data)

# 创建列表 循环数据 添加数据 没有其它操作 可转换为推导式

# 推导式写法 不是所有代码都可以写为推导式 只有一种固定操作

2、列表推导式和if一起使用

# 普通写法

# list_data = []

# for i in range(10):

#     if i % 2 == 0:

#         list_data.append(i)

# print(list_data)

# 创建列表 循环数据 添加数据位置永远在最前面 if 放后面

# list_data = [i for i in range(10) if i % 2 == 0]

# print(list_data)

3、列表推导式和三元表达式一起使用

# age = 20

# if age > 18:

#     print('成年')

# else:

#     print('非成年')

# print('成年') if age > 18 else print('非成年')

 

# age = 20

# if age > 18:

#     data = 1

# else:

#     data = 0

# print(data)

#

# data = 1 if age > 18 else 0

# print(data)

 

# list_data = []

# for i in range(10):

#     if i % 2 == 0:

#         list_data.append(i)

#     else:

#         list_data.append(str(i))

#

# print(list_data)

# 创建列表 循环数据 添加数据位置永远在最前面

# list_data = [i if i % 2 == 0 else str(i) for i in range(10)]

# print(list_data)

 

l1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 11]

# 1把列表中的数据类型转换为字符串类型

# 2列表所有数据x2 然后求和

 

# l2=[]

# for i in l1:

#     l2.append(str(i))

# print(l2)

#

# l2=[str(i) for i in l1]

# print(l2)

 

l2=[]

for i in l1:

    l2.append(i*2)

print(sum(l2))

 

 

标签:Day09,推导,公共,list,列表,l1,print,元组,data
From: https://www.cnblogs.com/xiaoabai/p/17091751.html

相关文章

  • 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先
    530.二叉搜索树的最小绝对差二叉搜索树中序遍历/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNod......
  • IOC理论推导
    我的理解:没有在业务层写入set方法时,在test方法(此处的test类可以理解为客户端)里,当通过业务层调用dao层里的实现时,如果dao层的实现有多个,此时在test调用业务层不能直接选择需......
  • 【DFS】LeetCode 235. 二叉搜索树的最近公共祖先
    题目链接235.二叉搜索树的最近公共祖先思路与【DFS】LeetCode236.二叉树的最近公共祖先一模一样代码classSolution{publicTreeNodelowestCommonAncesto......
  • 【DFS】LeetCode 236. 二叉树的最近公共祖先
    题目链接236.二叉树的最近公共祖先思路代码classSolution{publicTreeNodelowestCommonAncestor(TreeNoderoot,TreeNodep,TreeNodeq){if(roo......
  • 身份证验证相关公共方法
     身份证验证相关公共方法 packagecom.iktapp.api.utils;importcom.iktapp.api.constants.BusinessConstants;importorg.apache.logging.log4j.util.Strings;......
  • LeetCode 1143_ 最长公共子序列
    LeetCode1143:最长公共子序列题目给定两个字符串text1和text2,返回这两个字符串的最长公共子序列的长度。如果不存在公共子序列,返回0。一个字符串的子序列......
  • 公共字段自动填充
    公共字段自动填充在新增员工时需要设置创建时间、创建人、修改时间、修改人等字段,在编辑员工时需要设置修改时间和修改人等字段。这些字段属于公共字段,也就是很多表中都有......
  • python入门之列表推导式
    """列表推导式定义:使用简易方法,将可迭代对象转换为列表语法:变量=[表达式for变量in可迭代对象]变量=[表达式for......
  • 机器学习-白板推导-系列(三)笔记:线性回归最小二乘法与正则化岭回归
    文章目录​​0笔记说明​​​​1最小二乘法求线性回归模型​​​​2几何意义​​​​2.1平方损失函数的几何意义​​​​2.2用几何意义求线性回归模型​​​​3从概率......
  • P3379 最近公共祖先模板
    顾名思义就是求两个点的公共祖先暴力做法就是先维护每个点的父亲然后枚举但显然这样的作法查询复杂度是O(n)的就TLE了(所以需要用倍增优化:用f[i][j]表示第i个点向......