㈠ python 如果数组里含有需要的数时,取其下一数据
aa=[[1,3,8,21,30,32],[5,6,8,15,22,31],[1,2,3,8,22,25],[1,3,5,8,22,29],[4,5,15,22,30,31]]
arr1=[[1,3,8]]
arr2=[[5,8,22]]
for x in range(len(aa)-1):
if set(arr1[0]).issubset(set(aa[x])):
arr1.append(aa[x+1])
if set(arr2[0]).issubset(set(aa[x])):
arr2.append(aa[x+1])
print(arr1,'
'*3,arr2)
㈡ Python中一个数组中怎么表示任意一项
List[x]表示,如
L=[1,2,3]
L[0]=1
㈢ python数组分割
functionname= lambda anylist, n: [anylist[i * 3:(i + 1) * 3] for i in range(len(anylist)//n+1 if len(anylist)%n else len(anylist)//n)]
print(functionname(a, 3))
可以按任意长度切分
㈣ Python 数组分割
arr=[1,2,3,6,1,6,8,1,9,7,5,1]
coor,res=[],[]
i=j=count=0
foridx,numinenumerate(arr):
ifnum==1:
ifi==j:
i=idx
else:
ifi<j:
i=idx
else:
j=idx
coor.append((i,j)ifi<jelse(j,i))
forcrinsorted(set(coor)-{(0,0)}):
res.append(arr[cr[0]:cr[1]+1])
print(res)
如果你用的Python2就把最后的print的括号去掉就行,Python3的话就不用
用另外一种方法弄了一下,可能更直观些,附上如下
arr=[1,2,3,6,1,6,8,1,9,7,5,1]
coor,res=[],[]
i=j=0
idx=1
whileidx<len(arr):
whilearr[idx]!=1:
idx+=1
ifi==j:
i=idx
else:
ifi<j:
i=idx
else:
j=idx
idx+=1
coor.append((i,j)ifi<jelse(j,i))
forcrincoor:
res.append(arr[cr[0]:cr[1]+1])
print(res)
你随便选一种就好,不过推荐后面的这种
㈤ python 怎么根据特定值把数组分段
#!usr/bin/env python3.5#-*- coding:utf-8 -*- def COUNTT(A,B,C): return A[0]*B[1]*C[2] + B[0]*C[1]*A[2] + C[0]*A[1]*B[2] - C[0]*B[1]*A[2] -B[0]*A[1]*C[2] - A[0]*C[1]*B[2] M,N,P,Q=[0]*3,[0]*3,[0]*3,[0]*3 for i in range(3): print('请依次输入第',i+1,'个方程的x,y,z的系数以及常数项:',end='') M[i],N[i],P[i],Q[i]=[float(items) for items in input().split(',')]D=COUNTT(M,N,P) if D==0 : print ('根不存在或者有无穷多个根')else: print ('x=',COUNTT(Q,N,P)/D) print ('y=',COUNTT(M,Q,P)/D) print ('z=',COUNTT(M,N,Q)/D)
执行结果:
[willie@bogon ]$ python3 cramer.py
请依次输入第 1 个方程的x,y,z的系数以及常数项:324,0,2,34
请依次输入第 2 个方程的x,y,z的系数以及常数项:22,12,2,0
请依次输入第 3 个方程的x,y,z的系数以及常数项:0,12,23,344
x= 0.003796728971962617
y= -2.7377823208722742
z= 16.384929906542055
㈥ 请问在python里 L=[1,2,3,4,5,...] 数组截取怎么按照每三个元素截取
#用到了序列和切片
L=[xforxinrange(1,100)]#原数据1-99数组
print(L)
L2=L[::3]#L2为每三个的序列
print(L2)
L3=[]
foriinL2:#从L中3个3个的数
L3.append(L[i-1:i+2])#切片是从0计数所以从i-1开始
printL3
㈦ python数组要先定义长度吗
这个是根据实际情况来决定的,如果你的数组是追加一个元素的可以不用定义长度,如果你初始化一个列表然后要修改其中的值的话,就要定义长度了。
Python, 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
㈧ 对Python中数组的几种使用方法总结
这里介绍几个常用的列表操作:
1、添加元素
添加元素使用列表的内置方法append
number = [1, 2, 3, 4]
number.append(5) # number = [1, 2, 3, 4, 5]
number.append([6,7]) # number = [1, 2, 3, 4, 5, [6, 7]]
number.append({'a':'b'}) # number = [1, 2, 3, 4, [6, 7], {'a', :'b'}
可以看到强大的python列表可以嵌套任意类型
2、列表相加
要想连接两个列表,可以使用+号连接
a = [1, 2, 3]
b = [4, 5, 6]
c = a + b # c = [1, 2, 3, 4, 5, 6]
也可以使用列表内置方法extend连接两个列表
a = [1, 2, 3]
b = [4, 5, 6]
a.extend(b) # a = [1, 2, 3, 4, 5, 6]
用+号会创建一个新通对象,使用extend则在原来的对象上面修改
3、列表去重复
列表本身没有去除重复的功能,但是可以借助python的另外一个类型set(help(set)查看)
a = [1, 2, 3, 3,2, 1]
b = list(set(a)) # b = [1, 2, 3]
也可以借助字典类型的内置方法
a = [1, 2, 2, 3, 1, 3]
b = {}.fromkeys(a).keys() # b = [1, 2, 3]
㈨ python 问题:有一段数组,我想把它分成几个区间,取每个区间的最大值存到另一个数组里
length=len(a)/N##区间的平均长队,N当你是要分配的区间
idx=[None]*N#先为结果分配一个存储空间
foriinrange(N):
ifi==N-1:
idx[i]=max(a[i*length:len(a)+1])##防止最后一个区间长度不等于平均长度,比如a长度为19时,后面全当一个区间
else:
idx[i]=max(a[i*length:(i+1)*length])
㈩ python如何获取某个数组中某些下标的元素
print(your_list.index('your_item')) ###your_list为列表名称 your_item为需要修该的数据。
print [i for i, x in enumerate(your_list) if x == 'your_item']
your_list为待查list,your_item为具体要查的元素,打印出一个包含所有要查元素下标的列表。
【python列表】
1、可以先创建一个空列表,可以使用type(),查看类型。