python学习笔记-Day01
发布时间:2017-09-09 10:42:16
python学习笔记-Day01

cpython:官网版本,使用c实现,使用最为广泛,linux自带,

Jython :python 的java实现,与java语言的互操作高于其他python实现

Ironpython:python的C#实现,将python代码编译成C#的字节码,然后运行。

pypy:python的python实现,比cpython速度要快。

########################################################

安装

win下安装。直接下载安装包直接安装即可,如需在cmd下直接执行python命令,需要配置环境变量。

配置方式为:以win7为例

计算机--右键--属性--高级系统设置--环境变量--在系统变量中,找到Path

双击 并将python的安装路径进行添加,注意分隔符为分号,确定保存后,再次打开cmd即可

l########################################################

linux下安装

如果系统自带版本较低(如centos6系列自带python版本为2.6.X),下载源码包进行编译安装,过程如下:

以centos6.4为例

打开 为python 官网,下载源码包,目前最新版本为2.7.10

https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz

yum install gcc #安装以来报 tar xf Python-2.7.10.tgz #解压源码包 cd Python-2.7.10 ./configure --prefix=/usr/local/python27makemake install mv /usr/bin/python /usr/bin/python2.6 ln -s /usr/local/bin/python2.7 /usr/bin/python

由于centos6.3需要python2.6的支持,使用python2.7会出问题

所以需要修改yum配置文件中的python指向

1

vi /usr/bin/yum

将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6

########################################################

第一句python

1

vim hello.py

#文件结尾建议以.py结尾,原因一是可以便于文件的识别,二是被其他python文件调用时,非.py结尾的文件无法生成pyc文件(.pyc文件为python脚本的字节码文件)

#!/usr/bin/env python #linux系统下脚本文件的shebang设置,以 ./script 方式执行时, #可以为脚本指定默认的解释器 # -*- coding:utf-8 -*- #由于python脚本默认是ASCII编码,文在显示时会做一个ASCII到 #系统默认编码的转换,这时就会出错:SyntaxError: Non-ASCII character。 #需要在代码文件的第一行或第二行添加编码指示 print ”hello world“

完成后保存退出

执行脚本

print ”hello world“

注意:

1.# -*- coding:utf-8 -*- 的另外一种写法,即 # coding:utf-8 ,这里需要注意的是,后一种写法有时可能会不生效(没遇到过,但是有这种可能),所以推荐的写法还是第一种。

2.文件编码问题:计算机最开始的时候只有英文,而一个字节就使可以表示完所有的英文和许多的控制符号(基础ascii可以表示128个字符,为国际标准,扩展ascii扩展到255个,但不再是国际标准,ASCII的最大缺点是只能显示26个基本拉丁字母、阿拉伯数目字和英式标点符号,因此只能用于显示现代美国英语);后来计算机世界很快有其他语言的加入,但是ascii已经无法满足需求了,这时(这个时间段同时还有其他的文件编码,不一一列举),因为涉及到的字符越来越多,如中文,这个时期也有很多其他的文件编码(如果每个地区一套文件编码,本地使用没有问题,但是到了网络环境里,就会出现问题),后来大家觉得这样一套套的字符集太多了,就搞出了一个万国码,也就是Unicode,并成为业界的一个标准,unicode最少使用两个字节来编码一个字符,在使用的时候,如果要表示ascii字符的时候就会出现资源的浪费,因为ascii字符只要1个字节就可以 表示,然后,utf-8就被研究出来了,utf-8是一种可变长的的字符编码,可以用来表示unicode标准中的任何字符,且编码中的第一个字节仍与ascii兼容,utf-8使用一到四个字节来表示一个字符。

————————————————————————————

注释:

单行注释:以#开头

#单行注释

多行注释:三引号(可以为单引号或者双引号)

例:

”“”

多行注释

“”“

但是 #!/usr/bin/env python 和 # -*- coding:utf-8 -*- 因为有起特殊作用 不算注释

————————————————————————————

引号的区别

单引号和双引号都可以用来表示字符串,但是他们必须成对出现,

有一个特殊情况

"Let's go"

’Let\'s go‘ #字符串中的\ 表示转义

这两种情况等价,

########################################################

关于python脚本的执行方式

python文件分三类

内置模块

第三方类库

自定义文件

python文件在执行过程

首先从磁盘读取文件,加载到内存,在进行 词法分析--语法分析--编译--执行。

pyc文件的目的是为了加快程序的执行速度,类似与java 的class文件,

在python脚本执行期间,经过编译的结果只会存在于内存中,执行完成后,就会将结果保存到pyc文件,

这样下次就会再次进行编译,直接加载pyc文件到内存即可。

需要注意的是当hello.py 和hello.pyc文件同时存在时,python在执行前会首先判断hello.pyc文件是不是hello.py的直接编译结果,如果hello.py文件已经发生更改,那么python会再次编译hello.py文件并生成hello.pyc文件;如果hello.py未发生改变,则直接加载hello.pyc文件。

#############################################################

获取脚本参数

python提供了获取脚本参数的内置模块,sys.argv

使用方法如下

vi login.py import sys print sys.argv

执行

1

python login.py 123

['login.py', '123'] #结果,返回一个list (稍后会对list详细说明),

##############################################################

变量

定义: 指向某个内存空间地址的指针(指针可能不准确,其实就是给某段内存空间起了一个名字)

使用规则:1.变量名称智能是字母数字下划线

2. 第一个字符不能为数字

3. 声明变量时,需要避开 关键字

4. 变量区分字母大小写

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:咸宁网站制作 http://xianning.666rj.com