Python - Learn Note

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python - Learn Note 相关的知识,希望对你有一定的参考价值。

Python基本数据类型

整数、浮点数(浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的)、字符串(字符串是以‘‘""括起来的任意文本)、布尔值、空值(空值是Python里一个特殊的值,用None表示)

print语句

print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出,遇到逗号“,”会输出一个空格;使用“+”拼接不会产生空格

Python注释

Python的注释以#开头,后面的文字直到行尾都算注释

Python变量

变量是用一个变量名表示,变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头;

在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量;这种变量本身类型不固定的语言称之为动态语言;

示例  a = 123     # a是整数    
     a = ‘imooc‘   # a变为字符串

Python中raw字符串与多行字符串

在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。

但是r‘...‘表示法不能表示多行字符串,也不能表示包含"的字符串

多行字符串,可以用‘‘‘...‘‘‘表示:

‘‘‘Line 1
Line 2
Line 3‘‘‘

在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串

Python中Unicode字符串

字符串的编码问题:因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理(字节编码表)。
以Unicode表示的字符串用u‘...‘表示,比如:print u‘中文‘

   Unicode字符串除了多了一个 u 之外,与普通字符串没啥区别,转义字符、raw字符串和多行表示法仍然有效;

如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释 # -*- coding: utf-8 -*-

   目的是告诉Python解释器,用UTF-8编码读取源代码。

Python中布尔类型

      布尔类型运算:与运算(and:只有两个布尔值都为 True 时,计算结果才为 True。

              或运算(or):只要有一个布尔值为 True,计算结果就是 True。

              非运算(not:把True变为False,或者把False变为True。

    布尔类型还可以与其他数据类型做 and、or和not运算,Python把0空字符串‘‘None看成 False,其他数值和非空字符串都看成True;

    and or 运算的一条重要法则:短路计算

  1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
  2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

Python列表:list

   list是一种有序的集合(元素是按照顺序排列),可以随时添加和删除其中的元素。

直接用 [ ] 把list的所有元素都括起来,就是一个list对象。
由于Python是动态语言,所以list中包含的元素并不要求都必须是同一种数据类型,我们完全可以在list中包含各种数据:L = [‘Michael‘, 100, True]
通过索引来获取list中的指定元素。如:L[0]
倒序索引: 我们可以用 -1 这个索引来表示最后一个元素:L[-1]

   添加新的元素: 第一个办法是用 list 的 append() 方法,把新同学追加到 list 的末尾;

                          第二个方法是用list的 insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素;

   pop()方法删掉list的最后一个元素,pop(index)方法删掉list中指定索引的元素,并且它还返回这个元素;

   对list中的某一个索引赋值,就可以直接用新的元素替换掉原来的元素,list包含的元素个数保持不变。

Python元组:tuple

  tuple是另一种有序的列表。tuple和list非常类似,但是,tuple一旦创建完毕,就不能修改。

   创建tuple和创建list唯一不同之处是用( )替代了[ ]

定义单元素的tuple: 单元素tuple要多加一个逗号“,”,避免歧义; 
t = (1,) 在打印单元素tuple时,也自动添加了一个“,”,为了更明确地告诉你这是一个tuple。多元素 tuple 加不加这个额外的“,”效果是一样的:

   tuple所谓的不变是说,tuple的每个元素,指向永远不变。即指向‘a‘,就不能改成指向‘b‘,指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

Python之条件判断

  if 语句后接表达式,然后用:表示代码块开始。

  if ... else ... 语句,else 后面有个“:”

  if ... 多个elif ... else ... 的结构,一次写完所有的规则;

Python之循环

  for 循环就可以依次把list或tuple的每个元素迭代出来:

L = [‘Adam‘, ‘Lisa‘, ‘Bart‘]
for name in L:
    print name

while 循环,while 循环不会迭代 list 或 tuple 的元素,而是根据表达式判断循环是否结束。

N = 10
x = 0
while x < N:
    print x
    x = x + 1

break语句退出循环

continue跳过后续循环代码,继续下一次循环。

Python之dict

花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: value 的逗号可以省略。使用 d[key] 的形式来查找对应的 value;

判断key是否存在:用 in 操作符    ‘Paul‘ in d

   使用dict本身提供的一个get 方法,在Key不存在的时候,返回None  

   dict的第一个特点是查找速度快,无论dict10个元素还是10万个元素,查找速度都一样。而list的查找速度随着元素增加而逐渐下降。缺点是占用内存大,还会浪费很多内容

   dict的第二个特点就是存储的key-value序对是没有顺序的;

   dict的第三个特点是作为 key 的元素必须不可变,Python的基本类型如字符串、整数、浮

   点数都是不可变的,都可以作为 key。但是list是可变的,就不能作为 key。

Python集合之set

创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:

s = set([‘A‘, ‘B‘, ‘C‘])

set内部存储的元素是无序的。set不能包含重复的元素,会自动去掉重复的元素;

访问 set中的某个元素实际上就是判断一个元素是否在set中。(用in操作符判断);

添加元素时,用set的add()方法:如果添加的元素已经存在于set中,add()不会报错;

删除set中的元素时,用set的remove()方法,如果元素不存在set中,remove()会报错;

Python之函数

定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。return None可以简写为return。

Python的函数返回多值其实就是返回一个tuple在语法上,返回一个tuple可以省略括号;

让一个函数能接受任意个参数,我们就可以定义一个可变参数:可变参数的名字前面有个 号,我们可以传入0个、1个或多个参数给可变参数:def fn(*args):

 

以上是关于Python - Learn Note 的主要内容,如果未能解决你的问题,请参考以下文章

python learn note1

GIT LEARN NOTE

Note

《python计算机视觉编程》高清中英PDF+源代码+数据 Learn together

python note 01

使用 Scikit-Learn 在 Python 中绘制多项式回归