python学习

Posted by 高庆东 on June 6, 2017

1环境搭建

设置环境变量 解释将软件路径加载到dos路径方法是我的电脑属性高级系统设置

环境变量找到path 将路径加载

加载工具包:将pip 加载到环境变量中 打开dos 输入pip install 报的名字,即可加载包

Requests 是用于抓取网页的包

Pip是用来管理安装的外部包的程序

在eclipse中加载 新的软件包步骤help—install software

2语法

字符串中单引号双引号是一样的 3引号可以换行打印

不用声明变量类型而创造变量

Complex()负数构造函数

//双除号表示结果约为整形

要答应中文字符需要设置编码方式 #--coding: utf-8 --

在print中级\n可以换行

用print的时候当输出是不同类型的数据时需要用逗号隔开 并且转化成统一类型

3数据结构

(1)list

  (数字列表类型)Number_list=[1,2,3,4](可以是不同类型的数 据)
 (字符列表类型)string_list=[“db”,”qwe”,”qwewqew”]
  访问列表中的元素: 列表名[要访问的元素位置]
  更新列表元素直接赋值即可 
  删除元素 :del 列表名[位置]

  寻找列表中指定元素的下标 list.index(object)
  print(c.index(max(c)))打印列表c中最大元素对应的坐标

list

(2)元组

 A_tuple=(2,)
 B_tuple=(1,2,[1,2])
Tuple类型的数据不能被更改但是类型里的list类型的数据可更改
Tuple和list可以相互转换
对tuole类型操作时也用[]
可以对tuple类型进行加操作 截取操作

###(3)字典 key value Phone_book{“tom”:123,“jrre”:234} 索引 :A=Phone_book[“tom”] A=123

  增加 :Phone_book[“herry”]=678
  删除 :Del phone_book[“tom”]
  字典中不能包含同名的key
  输出字典中的key   dic.keys但是在py3中需要指明为列表b=list(dic.keys())

(4)函数

Def 名(参数)
“asd”*2 表示asd重复2遍
函数内部声明全局变量 global x
函数定义时第一个参数不能定义为默认参数,调用函数时对参数赋值以此进行
关键字参数可以跨越参数进行赋值  例:fun(a,b=2,c=50)     当调用函数时fun(13,c=30)赋值的结果是a=13,b=2,c=30
对于未知参数个数的函数定义

###4控制流

(1)if语句

结构:if 布尔条件:

     Do something

  Elif 布尔条件:

     Do somerthing

  Else:

     Do something

注意:所有关键字要加冒号 执行语句要对齐 缩进表示程序为结束 不缩进表示

与面的代码不是一段

(2)For

For i in range(1,10)

    Do somrthing

循环的范围可以是list range tuple dictionary等 字典范围是循环key

Range的分为是到包括左边的但不包括右边的值

(3)While

 While 布尔条件:
    Do something

做嵌套是用tab 里缩进表示一部分

4关键字

  • (1)break 跳出最外层循环
  • (2)Continue 跳出最近的一次循环
  • (3)Pass 可以忽略条件继续执行

5文件操作

6异常

(1)try:
     Do something
  Except 错位类型
     Do something

Try语句正常执行当有错误的时候跳转到相同错误类型的except处 没有错误程序自动忽略except

7面向对象编程

以某个函数作为另一个函数的参数时不用加括号

打印某个函数的返回值时不用给函数加扣号

(1)装饰器

装饰器使用时调用函数不加括号

8 GUI

  • as相当于宏定义 将某种定义为另一种

  • ——int—— 是类里的构造函数

  • Self 当前类的指针

  • dataset[:,:-1]=x 表示对除最后一列外的进行赋值

  • centroids[:,-1]=range(1,k+1)表示只对最后一列赋值

输入 x1=int(input(“(da)x1:”))

  • Import 和From imoprt区别是前者范围更大

  • 需要用到自定义的包时包中必须包含__init__

  • Numpy.random.randn 函数表示正太分布的数其参数表示维度

  • sizes[1:] 表示除去第一个以外的其他的

  • Xrange与range基本一样
  • Range(x,y,z)x表示起始位置y表示终止位置z表示间隔距离
  • Random.shuffle(x)随机打乱顺序

  • cPickle模块在py3.以后是pickle

  • Math.pow()是实现指数运算
  • Numpy.dot()实现内积运算

  • 我的python用的是utg_8编码的所以不管是ascii还是unicode都可以 encode用来编码 decode用来解码

  • Zip函数可以合并两个列表 一一对应合并为元组 但是输出是zip类型的 需要转换为所需要的类型 解压就是zip(*object)

  • Python模块命名不能与关键字,预留名相同

  • Numpy.argmax 用于求最大值对应的自变量

  • Numpy.asarray(a,dtype,order):将列表转化为矩阵 A为待转化列表 dtype为转化后的类型 Order默认无
  • Numpy.prod():计算数组元素的连乘结果

  • Numpy.nditer()对数组进行索引 可以返回元素的指针

  • 通过neiter构建循环

  • w=np.random.randn(3,4)<0.5 输出的是布尔型的3*4的矩阵
  • Numpy.ravel()平铺一个矩阵

  • Lambda简化函数表达

  • Lambda后面接x表示x是参数