http://cs231n.github.io/python-numpy-tutorial/

Python is a great general-purpose programming language on its own, but with the help of a few popular libraries (numpy, scipy, matplotlib) it becomes a powerful environment for scientific computing.

#PYTHON基础
数据类型
特殊:list,dictionary,set,tuples

运算符
字符串操作
x ** 2 平方

流程控制语句
if,while,for
使用缩进表示语言结构

函数
定义和使用

类定义和使用
默认参数self的理解
类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值,Python会提供这个值。self指向对象(instance)本身

#python如何安装第三方软件包
1 下载源码包
在github 或者 pypi上找到源码。找到源码格式大概都是 zip、tar.zip、tar格式的压缩包。解压这些包,进入解压好的文件夹,通常会看见一个 setup.py 的文件。打开命令行,进入该文件夹。运行
python setup.py install
这个命令,就能把这个第三库安装到系统里,也就是你的 Python 路径,windows大概是在 C:\Python2.7\Lib\site-packages。
Linux会在 /usr/local/lib/python2.7/dist-packages。
Mac 应该在 /Library/Python/2.7/site-packages

2 使用pip or easy_install
pip install flask
pip uninstall flask
pip intall flask-master.zip 使用pip安装下载的zip文件的源码包

#附录
Python2.6不支持 set的列举定义 animals={'cat','dog'} 会有语法错误。
3与2.7的版本有较大的不同,不能向下兼容。
Somewhat confusingly, Python 3.0 introduced many backwards-incompatible changes to the language, so code written for 2.7 may not work under 3.4 and vice versa.

遇到问题,请多使用documentation
https://docs.python.org/2/

python字符集的问题
存储统一使用unicode字符集

#PYSTROM
更改pystrom使用的python版本
Project>Interpreter

如果要使用中文注释,使用#coding=utf-8

在run中执行py文件

可以选中语句,然后右键run the selection in the console

可以单步调试

  1. # coding=utf-8
  2. # variables' types
  3. # list
  4. tmp2 = [1, 2, 3, "myItem"]
  5. # you can use negative value for indexing
  6. print tmp2[-1]
  7. tmp2.append(234)
  8. for item in tmp2:
  9. print item
  10.  
  11. # dictionary
  12. tmp3 = {1: "nice", "key2": "bad"}
  13. print tmp3[1]
  14. tmp3["3"] = "test"
  15. del tmp3[1]
  16. for item in tmp3:
  17. print item
  18. print tmp3[item]
  19.  
  20. # set
  21. animals = {'cat', 'dog'}
  22. animals.add('erer')
  23. animals.add("cat")
  24. animals.remove("dog")
  25. print 12 in animals
  26.  
  27. # tuple
  28. tuple5 = (1, 2)
  29. tmp6 = {tuple5, 12}
  30. print (1, 2) in tmp6
  31.  
  32. # operator
  33. tmp = 2**4
  34. print tmp
  35.  
  36. # string
  37. name = "rex"
  38. print 'Hello, %s' % name
  39.  
  40. # control structure
  41. # condition
  42. if tmp == 12:
  43. print "yes"
  44. elif tmp < 0:
  45. print 'Hello, %d' % tmp
  46. else:
  47. print "no"
  48.  
  49. # loop
  50. count = 0
  51. while count < 9:
  52. print 'The count is:', count
  53. count += 1
  54.  
  55. # define a function
  56. def sign(x):
  57. name1 = "rex"
  58. if x > 0:
  59. return 'positive'
  60. elif x < 0:
  61. print 'Hello, %s' % name1
  62. return 'negative'
  63. else:
  64. return 'zero'
  65.  
  66. # defining classes
  67. class Greeter(object):
  68. # Constructor
  69. def __init__(self, name1):
  70. self.name = name1 # Create an instance variable
  71.  
  72. # Instance method
  73. def greet(self, loud=False):
  74. if loud:
  75. print 'HELLO, %s!' % self.name.upper()
  76. else:
  77. print 'Hello, %s' % self.name
  78.  
  79. # create an instance of a class
  80. tmpClass = Greeter("rex")
  81. # 所以加点访问的,可能是包名/也可能是类的某个instance名

  

  1. # coding=utf-8
  2. # numpy
  3. import numpy as np
  4. tmp = np.array([1, 2, 3])
  5. print tmp[1]
  6. tmp2 = np.random.random((1, 2))
  7. # 比 matlab 要繁琐的多,创建矩阵,要使用tuple
  8. print tmp2
  9. a = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
  10. # get a row
  11. print a[1,:]
  12. print a[0,:]
  13. print a[:, 1]
  14. print np.arange(3) # 0 1 2
  15. # calculate the items
  16. # Mutate one element from each row of a using the indices in b
  17. b = np.array([1, 2, 3])
  18. a[np.arange(3), b] += 10
  19. print a

  

附录:python and numpy的更多相关文章

  1. [python] 安装numpy+scipy+matlotlib+scikit-learn及问题解决

    这篇文章主要讲述Python如何安装Numpy.Scipy.Matlotlib.Scikit-learn等库的过程及遇到的问题解决方法.最近安装这个真是一把泪啊,各种不兼容问题和报错,希望文章对你有所 ...

  2. python安装numpy和pandas

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须 ...

  3. python和numpy的版本、安装位置

    命令行下查看python和numpy的版本和安装位置 1.查看python版本 方法一: python -V 注意:‘-V‘中‘V’为大写字母,只有一个‘-’ 方法二: python --versio ...

  4. python之numpy的安装

    这是我第一次写博客,我的第一次打算送给python的numpy库的安装指导,这是我看到一位大神的博客后产生的启发,真是控制不住自己,必须得写一下. 第一次安装numpy浪费了我一个下午,结果还没安装好 ...

  5. 如何查看安装python和numpy的版本

    命令行下查看python和numpy的版本和安装位置 1.查看python版本 方法一: python -V 注意:‘-V‘中‘V’为大写字母,只有一个‘-’ 方法二: python --versio ...

  6. 命令行下查看python和numpy的版本和安装位置

    命令行下查看python和numpy的版本和安装位置 1.查看python版本 方法一: python -V 注意:‘-V‘中‘V’为大写字母,只有一个‘-’ 方法二: python --versio ...

  7. 图文并茂的Python教程-numpy.pad

    图文并茂的Python教程-numpy.pad np.pad()常用与深度学习中的数据预处理,可以将numpy数组按指定的方法填充成指定的形状. 声明: 需要读者了解一点numpy数组的知识np.pa ...

  8. [转] python安装numpy和pandas

    最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了.首要条件,python版本必须 ...

  9. [转]python与numpy基础

    来源于:https://github.com/HanXiaoyang/python-and-numpy-tutorial/blob/master/python-numpy-tutorial.ipynb ...

  10. 【转载】python安装numpy和pandas

    转载:原文地址 http://www.cnblogs.com/lxmhhy/p/6029465.html 最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装 ...

随机推荐

  1. 旧文备份: CANopen的LSS子协议中文翻译

    有关节点地址和网络波特率的在线设置等:下载

  2. django中介模型,CBV模型,及logging日志配制

    1.中介模型 中介模型,这个是在我们创建表格时,多对多添加的时候应用到的,通过制定ManyToManyField字段中的through参数来定义,为两者的关系新建一个中介class 为什么会产生这个中 ...

  3. 当Java遇见了Html--Jsp九大内置对象篇

    jsp内置对象对象是web容器创建的一组对象,不使用new关键词久可以使用的内置对象. 九大内置对象包括以下: out --JspWriter request --ServletRequest rep ...

  4. 漂亮提醒框js

    <script type="text/javascript"> var filename = "PICC_V2.1.3.0_新增功能操作手册.doc" ...

  5. 可复用 React 的 HOC 以及的 Render Props

    重复是不可能的,这辈子都不可能写重复的代码 当然,这句话分分钟都要被产品(领导)打脸,真的最后一次改需求,我们烦恼于频繁修改的需求 虽然我们不能改变别人,但我们却可以尝试去做的更好,我们需要抽象,封装 ...

  6. mac上配置java jdk环境

    访问Oracle官网 http://www.oracle.com,浏览到首页的底部菜单 ,然后按下图提示操作: 2.点击“JDK DOWNLOAD”按钮: 3.选择“Accept Lisence Ag ...

  7. 8-1 python 接口开发(提供数据、返回session_id)

    1.接口开发,根据不同查询条件返回数据库查询结果 import flask import tools import json server = flask.Flask(__name__) #新建一个服 ...

  8. 【转载】最长回文字符串(manacher算法)

    原文转载自:http://blog.csdn.net/lsjseu/article/details/9990539 偶然看见了人家的博客发现这么一个问题,研究了一下午, 才发现其中的奥妙.Stupid ...

  9. cmd中编译java脚本 (2013-05-02-bd 写的日志迁移

    此前提是已经搭建好了jdk的编译环境! 先写一个java脚本如:建立一个HelloWord.java //public : 表示此类是公共的 一个java文件中只能有一个public类 //class ...

  10. POJ:2395-Out of Hay

    Out of Hay Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 18780 Accepted: 7414 Descripti ...