查看“Python”的源代码
←
Python
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
[[Python2 vs Python3]] [[python的安装]] [[Python程序的调试]] [[ipython]] [[jupyter]] =容器= *container(数据结构) *有3种: 序列,映射,集合 ==序列(sequence)== *序列有6总(列表,元组,字符串,Unicode字符串,buffer对象,xrange对象) *序列的索引从0开始,对序列分片时包括开头,不包括结尾,比如A[3:4]只包括A列表的第四个成员 *序列的加号操作,[1,2,3]+[4,5,6] = [1,2,3,4,5,6] *乘号参考加号 [1,2]*2 = [1,2,1,2] ===通用序列操作=== * 索引,分片(slice),加,乘,迭代,最大,最小,长度 * 索引从0开始,最后一个元素是-1(从右向左索引) *分片: 访问倒数3个 A[-3:],访问正数3个A[:3] :*步长为2访问 A[0:10:2],步长可以为负,从右向左。 *相加 [1,2]+[3,4]-->[1,2,3,4] *相乘 [1,2]*3 --> [1,2,1,2,1,2] :* A=[None]*10 生成长度为10的空的列表 *成员资格:in,布尔运算符 *len (长度),min,max *enumerate: 对一个列表或数组既要遍历索引又要遍历元素时 for index,text in enumerate(list): print index ,text ===列表=== * 列表的元素可以修改,字符串不能 :* x=[1,1,1],x[1]=2 :* del x[1] :* x[1:1]=[2,3,4] 分片赋值,注意这相当于插入 * 列表方法 :* append, count, extend, index, insert :* pop (删除指定位置元素,并返回该元素,同时修改列表),实现栈的功能,入栈(push),出栈(pop),Python里面没有push,用append功能实现 :* remove,reverse,sort (sort的用法要注意,参考书的39页),sorted ===元组=== *不可变序列 *(1,2,3) (1,) * 比如3*(40+2) 和3*(40+2,)的差别 * tuple函数:把列表转换为元组 * list: 把元祖装换为列表 * 元组貌似没有什么用处,列表基本满足所有需要 ===字符串=== *不可变 * A='python‘ * % 格式化 ==集合== *无序不重复集 set [http://blog.csdn.net/business122/article/details/7541486] ==数组== *numpy中有个数组ndarray的数据结构 [http://blog.csdn.net/sunny2038/article/details/9002531] :array() 可以将列表等转化为数组 :asarray()和array差不多,但是不一定需要复制 =函数= *在参数名之前使用一个星号,就是让函数接受任意多的位置参数。[http://blog.csdn.net/qinyilang/article/details/5484415] ==lambda 函数== >>> g = lambda x:x+1 看一下执行的结果: >>>g(1) >>>2 可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体:f(x)=x+1 参见http://www.cnblogs.com/evening/archive/2012/03/29/2423554.html =模块= *glob 查找文件位置 *os 系统的一些变量 :dir=os.getenv('bc03_dir') ==内部变量,魔方方法== *__file__ :查找源文件位置 print(ppxf.__file__) *__name__,__main__ :if __name__ == '__main__': test() *__init__ (初始化方法 ) :def __init__(self) *__all__ (显示可见功能) :copy.__all__ *__doc__ (文档) :print(copy.copy.__doc__) [[脚本和模块]] =画图= *ipython中事先执行 %matplotlib *http://www.scipy-lectures.org/intro/matplotlib/matplotlib.html *[[matplotlib]][http://www.cnblogs.com/wei-li/archive/2012/05/23/2506940.html] *pylab combines pyplot with numpy into a single namespace. This is convenient for interactive work, but for programming it is recommended that the namespaces be kept separate, e.g.: import numpy as np import matplotlib.pyplot as plt x = np.arange(0, 5, 0.1); y = np.sin(x) plt.clf() #clear the current figure plt.subplot(211) plt.plot(x, y) plt.show() * options for the color characters are: 'r' = red 'g' = green 'b' = blue 'c' = cyan 'm' = magenta 'y' = yellow 'k' = black 'w' = white * Options for line styles are '-' = solid '--' = dashed ':' = dotted '-.' = dot-dashed '.' = points 'o' = filled circles '^' = filled triangles *marker style [https://matplotlib.org/api/markers_api.html] *pmesh,pcolormesh: 画二维的平面分布的图 *colorbar =输入输出= ==格式输出== *print("%10.3f"% (356.08977)) *在输出ndarray的时候,设置输出的数的精度 :np.set_printoptions(precision=2) ==文件输出== f = open("chain.dat", "w") k=1000 l=10 f.write("{0:4d} {1:d}\n".format(k,l)) #str.format 用法 0是第一个参数,1是第二个参数,:后面是格式, write只能是字符串 f.close() f = open("chain.dat", "a") #接着写 =Packages= *[[astropy]] *[[scipy]] *[[numpy]] *消光:sfdmap and extinction :https://github.com/kbarbary/sfdmap *healpy =链接= *带下划线变量的意义 [http://www.cnblogs.com/elie/p/5902995.html]
返回至“
Python
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
大陆简体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
社群首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息