时间:2021-05-22
例1:给一个列表如下,里面每个元素对应的是x和y的值
a = [[5,2],[6,3],[8,8],[1,3]]现在要挑出y的值为3对应的x的值,即6和1
import numpy as npa = [[5,2],[6,3],[8,8],[1,3]] #c=np.mat(a),因为只有矩阵(也可以用array)才能用a[0,0]这样的调用#表示第一个数的用法而list没有,故在最后append需要用到#注意:array也没有index这样的用法(只有list有,此题a已经是list),#使用index要改成listc = np.mat(a) b = []for i in range(len(a)): try: #使用try...except...是因为比如3不在第一个[5,2]中会报错并终止运行 b_index = a[i].index(3) #使用index寻找3所在的索引值 except: pass #pass表示如果报错那么跳过并继续下一个 else: #如果没有报错则进行else内容 b.append(c[i,0])print(b)#结果为[6,1]或者使用简单的如下:
a = [[5,2],[6,3],[8,8],[1,3]]x = [i for i in a if 3 in i]print(x)例2:
已知一系列坐标(x,y,z,h)分别对应横坐标纵坐标z坐标和高,现在要在x-y平面画出h=0.00221图(实际上就是等高线图)
h保留5位小数。
上面只展示了一小部分数据
1,导入数据
import matplotlib.pyplot as pltimport numpy as npdata = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt')2,将第四列即h保留5位小数
for i in range(len(data)): data[i,3] = float('%.5f'%data[i,3])3,将h=0.00211对应的x,y坐标找到并保存到x_mat和y_mat中
x_mat = []y_mat = []for i in range(len(data)): try: data_index = list(data[i]).index(0.00211) except: pass else: x_mat.append(data[i,0]) y_mat.append(data[i,1])4,画散点图
plt.scatter(x_mat,y_mat)plt.show()结果如下:
完整代码:
import matplotlib.pyplot as pltimport numpy as npdata = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt')for i in range(len(data)): data[i,3] = float('%.5f'%data[i,3]) #data_list = list(data)x_mat = []y_mat = []for i in range(len(data)): try: data_index = list(data[i]).index(0.00211) except: pass else: x_mat.append(data[i,0]) y_mat.append(data[i,1])plt.scatter(x_mat,y_mat)plt.show()以上这篇python从list列表中选出一个数和其对应的坐标方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在Python列表操作中:列表乘以某一个数,如list2=list1*2得到一个新的列表是list1的元素重复n次,且list1不改变。但运行如下代码时,得到的
如果直接用python的一个list除以一个数,会报错:a=[1.0,1.0,1.0]c=a/3print(c)TypeError:unsupportedope
Python中列表(list)的实现其实是一个数组,当要查找某一个元素的时候时间复杂度是O(n),使用list.index()方法,但是随着数据量的上升,lis
Python列表具有内置的list.sort()方法,可以在原地修改列表。还有一个sorted()内置的函数从迭代构建一个新的排序列表。在本文中,我们将探讨使用
本文实例讲述了C++算法之在无序数组中选择第k小个数的实现方法。分享给大家供大家参考,具体如下:从一个无序的整型数组中选出第k小的数,如k=1为最小数,k=n为