五、判断python中某个模块是否存在:
import requests
print(hasattr(requests, 'get'))
查看python安装的所有路径:
type -a python3
四、希腊字母在python中的显示
希腊字母描述
plt.xlabel(u'Y (${\mu}m$)’) 表示 微米 Y(um)


三、直接按照第一列数据的大小进行排列每一行。
data_new = data[np.lexsort(np.fliplr(data).T)]
二、读取很多gz压缩文件方法

### read many txt files
import glob
import gzip, itertools
import numpy as np
import matplotlib.pyplot as plt
files = glob.glob( '*.gz')
it = (gzip.open(f, 'rt') for f in files)
with gzip.open('a_file.gz', 'wb') as f:
for line in itertools.chain.from_iterable(it):
f.write(line)
data = np.loadtxt('a_file.gz')
a = data[:,2]
print a
一、 python 常用
列表【list】
【np.split(array(), num)】numは分割する数です(区切る数)。
【reshape】
list_a = [0, 1, 2, 3, 4, 5, 6, 7, 8]
array_a = np.array(list_a)
array_b = np.reshape(array_a, (-1, 3))等价于array_b = np.reshape(array_a, (3, 3))
———> [[0 1 2]
[3 4 5]
[6 7 8]]
此处的-1表示懒得计算该填什么数字,由python通过a和其他的值3推测出来。
list_c = [1, 4, 9, 16]
array_a = np.array([list_a, list_b, list_c])
array_a[array_a <= 3] = 0 [change the elements into 0 which they are less than 3]
【transpose】表示转置。np.transpose()
【np.size(array)】配列の長さを取得するには size を使います。
【np.linspace(start, end, num)】in default, num=50
【np.array[num]】配列要素の取り出し。インデックスは「0」から始まります。負の数を指定知ると、末尾からカウントされて、「−1」から始まります。
【np.sort】を使うと、配列をソートすることができます。defaultは昇順です。sortedとそのreverseオプションを使うことで降順にできます。np.array(sorted(array_b, reverse = True))…..【np.sort(array, axis = 0)】縦軸に沿う昇順。【np.sort(array, axis = 1)】横軸にそう降順。【np.sort(array, axis = None)】なし。
四則演算: a+b, a-b, a*b, a/b, a%b, a**b.
【np.zeros((n,m))】「零行列」を作る。
【np.ones((n,m))】全ての要素が「1」の行列を作る。
【np.eye((n))】「単位行列」を作る。
データの読み込む方法・read method:
Data = np.loadtxt(‘path’)
Data = np.genfromtxt(‘path’, delimiter = ‘,’, dtype = int)
Volume = Data[:,0] 1目列を読む。ここでも「インデックス」は「0」から始まることに注意してください。
行列を縦と横に結合する方法を説明します。
array_v = np.vstack((array_a, array_b))
array_h = np.hstack((array_a, array_b))
Loop handling
for文・数値
for i in range(1, 200, 5) :
S = s+ i
for文・リスト・配列
for sth in [a, b, c]:
…..
while文
Create a 4x4 array:
> >>> m=numarray.array(range(16),shape=(4,4))
> >>> m
> array([[ 0, 1, 2, 3],
> [ 4, 5, 6, 7],
> [ 8, 9, 10, 11],
> [12, 13, 14, 15]])
>
> Row access:
> >>> m[1]
> array([4, 5, 6, 7])
>
> Column access:
> >>> m[:,1]
> array([ 1, 5, 9, 13])
>
> Sum all the rows:
> >>> [sum(m[i]) for i in range(4)]
> [6, 22, 38, 54]
>
> Sum all the columns:
> >>> [sum(m[:,i]) for i in range(4)]
> [24, 28, 32, 36]
三角函数测试:
import math as ma
pai2 = ma.atan(1.0) * 8
cone_angle = 15.0 * pai2 / 360.0
print pai2
print cone_angle
print 250/ma.cos(cone_angle)
结果为:
6.28318530718
0.261799387799
258.819045103
可以得到按照第一列条件取出第二列相应的数据
data = np.loadtxt('angular.txt')
y = np.array(data[:])
b = data[data[:,0]>2,1]
c = data[data[:,0]<5,1]
#f=open('angular.txt')
#data=[line.split() for line in f]
#x=np.array(data,dtype='float_')
idx = np.where((y[:,1]<3) & (y[:,1]>1))
print y[:,2][idx]
网友评论