
正文
python数组内查询,python查询数在数组中的位置
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
python找数组中的最大值
enumerate()函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标。
x = [3, 2.2, 7.4, 6, 4]
list(enumerate(x))
# 输出 [(0, 3), (1, 2.2), (2, 7.4), (3, 6), (4, 4)]
operator.itemgetter()函数用于获取对象的哪些维的数据,参数为想要取的一些维度序号。
x = [3, 2.2, 7.4, 6, 4]
b1 = operator.itemgetter(2, 1)
b1(x) # 输出 (7.4, 2.2)
b2 = operator.itemgetter(3)
b2(x) # 输出 6
max()函数有一个应用很巧妙的参数key,在这里定义为operator.itemgetter(1),表示对enumerate(x)每个元素的第一维做比较(从0维开始),然后返回第一维值最大的元素,即包含索引和数值。
key参数还有其他的巧妙应用:
# 获取数组中绝对值最大的数
x = [3, 2.2, -7.4, 6, 4]
max(x, key=abs) # 返回 -7.4
# lambda表达式形式
x = [3, 2.2, -7.4, 6, 4]
max(x, key=lambda x: abs(x)) # 返回 -7.
相关问答
Q1: python怎么提取数组中的数
潘森提取速度入账数据,可以将数组读取出来,然后一个一个的进行提取,按照数组的几维来进行读取
Q2: 【python】找出数组中丢失的数?
题目:给定一个由n-1个整数组成的未排序的数组序列,其元素都是1到n中的不同整数。请写出一个寻找数组序列中缺失整数的线性时间算法。
分析:异或法。异或运算,当参与运算的两个数相同时,结果为假,当两个数不同,则结果为真。
a = 1 ^ 2 ^ 3 ^ ...^ n。b = 1 ^ 2 ^ 3^...(m-1) ^ (m+1) ^ ...^n,其中m表示缺失数字。所以a ^ b = (1 ^ 1)^(2 ^ 2)...(m-1) ^(m-1)^m^(m+1)^(m+1)...^(n^n) = m。
code:
def getNum(arr):
if arr is None or len(arr) = 0:
return -1
a = arr[0]
i = 1
while i len(arr):
a ^= arr[i]
i += 1
b = 1
i = 2
while i = len(arr) + 1:
b ^= i
i += 1
return a ^ b
if __name__ == "__main__":
arr = [1, 4, 3, 2, 7, 5]
print(getNum(arr))
程序运行结果为:
6
Q3: Python中数组的基本操作
先定义一个数组列表:
列表合并也可以用+,但是用+的话,会产生一个新的列表(当然也可以赋值给任何的变量),而extend则只是修改了原来的对象
只读数组,只能查看不能编辑,列表的切片操作同样适于元组。
表达方式:tuple=("元素1","元素2","元素3"),中间同样用,隔开
特殊的元组:tupleZero=()空元组
tupleOne=("元素1",) 只有一个元素,后面要跟一个,(注意好的习惯的养成)
作用:1.对于一些不想被修改的元素,可以放在元组里面
2.元组可以在映射(和集合的成员)中当作键使用,而列表不行
3.元组作为内建函数和方法的返回值
enumerate(列表对象,返回标签起始值(默认为零))
上面的例子可以看出,返回的i是一个元组,如果不想要元组的话,可以用两个参数接收:
关于python数组内查询和python查询数在数组中的位置的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。







