Python学习笔记

作为一个C++程序员,学习Python,我想笔记还是没必要像写入门教程一样。入门教程可以参考廖雪峰学Python教程

1.Python是啥?

Python是一种动态的现代编程语言,完全面向对象类似Java,但与Java区别最大的估计也就是Python还是动态运行的语言了吧——类似脚本语言(如:Javascript)。无需编译,直接通过解析器运行。

2.Python特色:

就凭“人生苦短,我用Python”这天下第一装逼编程语言非他莫属,什么优雅、简洁、高效,我不是创造语言的,我不懂。我只信奉能解决你问题的语言就是最好的,或者说只有最合适的编程语言,没有最好的编程语言。比如学Python的和学C的内存管理的概念肯定天壤之别。

论装逼,世界上最好的语言不是PHP吗?OK,来看看Python的优点

1.语法简洁 所有模块用tab键(或者4个空格)区分对其,没有结束标点符号,基础数据类型也较少,临时变量直接用,声明都不要是不是很js?但js还有var声明呢。所以确实是能省略的都省略了,也算是简洁了。所以易学也算归入此类了,其实是入门容易罢了,任何一门语言精通都需要大量的时间和精力去沉淀。

2.跨平台 这个和Java类似,请确信没有真正跨平台的语言,如果有那就是汇编。只要图灵计算机不死,汇编就一定存在。借助于各个操作系统平台都有相应解析器。所以,你编写的源代码能在各平台运行(如果真需要做此方面的工作,切记不要用系统API,又说回去了,假跨平台,唉)。能解决极大部分跨平台工作就算是优点了。qt、Java、js也不过如此。

3.库丰富 这个优点简直就是Python流行开来的一个喷射器,没有丰富的库,我想Python肯定还在实验室。各个领域都有其强大的库的存在,如:大数据、AI、机器学习、图像处理、网络并发、自动化等等。也因此各种主流语言都有兼容Python的库,这也解释了有人说Python是一种胶水语言的说法,它能让多语言程序协调工作。

4.开源性 这是一个不是有点的优点,怎么解释呢,你能看的人家的代码,开心的是不是你?但人家的源代码却不能加密这是不是有点。。。?


3.Python学习

下面就是Python学习过程中的具体了,笔者环境Ubuntu16+Python3.5。为啥选择Linux系统,如果我说Linux安装pip,Django,MySQL,Nginx等更方便,会不会被喷?总之平台不重要,毕竟学习而已。能用python就行了。

1.基础数据类型


number(数字)         包括 int , long , float , complex 
str(字符串)        例如:hello, "hello" ,hello 默认使用utf-8编码
list (列表)          例如:[ 1 , 2 , 3 ],[ 1 , 2 , 3 ,[ 1 , 2 , 3 ], 4
dictionary(字典)       例如:{ 1 : "nihao" , 2 : "hello"
tuple (元组)          例如:( 1 , 2 , 3 ,abc)
bool (布尔)          包括 True False 
None (空值) None
python中基本就这些数据类型,变量名通常用驼峰格式,常量用全大写如:PI = 3.1415926 

2.函数声明与调用

面向过程,或者叫函数式编程。

函数声明:

def fun(参数1,参数2...):

    函数体...

    #pass 空函数必须要,占位符的作用

    #return 返回值 如果返回值为None可以不写

函数调用:fun(参数1,参数2...)

3.类

面向对象编程。一切皆是对象,这句话也适合Python

通常类的首字母大写,定义

class Aobject(父类名):

    pass

需要注意点有:

1.类与实例

类是类,实例是类的对象。类是元类(类的类)的对象。

2.类的访问权限,私有成员 __开头

3.类的多继承、多态

4.__slots__与@property


4.IO编程

文件读写、序列化等


5.进程与线程

知道怎么表示


6.正则表达式

知道怎么表示

符号意义
.匹配任意一个字符
+至少一个字符
*任意字符
?最多一个字符
\s一个空格
\d匹配一个数字
\w匹配一个字母或数字
{m}匹配m个字符
{m,n}m~n个字符如:{3,8}

  • [0-9a-zA-Z\_]可以匹配一个数字、字母或者下划线;

  • [0-9a-zA-Z\_]+可以匹配至少由一个数字、字母或者下划线组成的字符串,比如'a100''0_Z''Py3000'等等;

  • [a-zA-Z\_][0-9a-zA-Z\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量;

  • [a-zA-Z\_][0-9a-zA-Z\_]{0, 19}更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)。

A|B可以匹配A或B,所以(P|p)ython可以匹配'Python'或者'python'

^表示行的开头,^\d表示必须以数字开头。

$表示行的结束,\d$表示必须以数字结束。


7.第三方库的使用

具体语法:

import 第三方库文件

然后直接用    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值