zoukankan      html  css  js  c++  java
  • 附录:python and numpy

    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.7Libsite-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

    可以单步调试

    # coding=utf-8
    # variables' types
    # list
    tmp2 = [1, 2, 3, "myItem"]
    # you can use negative value for indexing
    print tmp2[-1]
    tmp2.append(234)
    for item in tmp2:
        print item
    
    # dictionary
    tmp3 = {1: "nice", "key2": "bad"}
    print tmp3[1]
    tmp3["3"] = "test"
    del tmp3[1]
    for item in tmp3:
        print item
        print tmp3[item]
    
    # set
    animals = {'cat', 'dog'}
    animals.add('erer')
    animals.add("cat")
    animals.remove("dog")
    print 12 in animals
    
    # tuple
    tuple5 = (1, 2)
    tmp6 = {tuple5, 12}
    print (1, 2) in tmp6
    
    
    # operator
    tmp = 2**4
    print tmp
    
    # string
    name = "rex"
    print 'Hello, %s' % name
    
    # control structure
    # condition
    if tmp == 12:
        print "yes"
    elif tmp < 0:
            print 'Hello, %d' % tmp
    else:
        print "no"
    
    # loop
    count = 0
    while count < 9:
        print 'The count is:', count
        count += 1
    
    
    # define a function
    def sign(x):
        name1 = "rex"
        if x > 0:
            return 'positive'
        elif x < 0:
            print 'Hello, %s' % name1
            return 'negative'
        else:
            return 'zero'
    
    
    # defining classes
    class Greeter(object):
        # Constructor
        def __init__(self, name1):
            self.name = name1  # Create an instance variable
    
        # Instance method
        def greet(self, loud=False):
            if loud:
                print 'HELLO, %s!' % self.name.upper()
            else:
                print 'Hello, %s' % self.name
    
    # create an instance of a class
    tmpClass = Greeter("rex")
    # 所以加点访问的,可能是包名/也可能是类的某个instance名
    

      

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

      

  • 相关阅读:
    每日一个设计模式之策略模式
    Java发送get和post请求
    sql分组取最大值
    解析xml
    jsp:include
    schema的详解2
    文法和语言
    高级语言程序简介
    Dataframe根据某一列的值获取满足条件的行的其他列的值
    Dataframe数值转为二维列表
  • 原文地址:https://www.cnblogs.com/ceo1207/p/6492414.html
Copyright © 2011-2022 走看看