# 查看Python关键字
>python
>>>>import keyword
>>>>keyword.kwlist
注释有两方面作用:
(1)提高程序的可读性(最重要的作用);
(2)调试程序,注释掉可能出问题的代码。
合理的代码注释应该占源代码的1/3左右
注释可以插入到除标识符和字符串中间的任何位置
Python解释器会忽略注释的内容
注释的两种形式:
(1)单行注释:井号“#”;
(2)多行注释:三个单引号或三个双引号(该处存在疑问,和字符串的区别)。
Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
Python是一门弱类型语言,这包含两方面的含义:
(1)变量无需声明即可使用,或者说对从未用过的变量赋值就是声明了该变量;
(2)变量的数据类型可以随时改变。
标识符:合法的名字,给变量、类、方法命名。
命名规则:
(1)必须以字母、下划线开头;
(2)后面可以跟任意数目的字母、数字、下划线;
(3)字母可以包含英文字母,中文字符,日文字符等UTF-8所能表示的多种语言字符;
(4)标识符不能是Python关键字,不建议是内置函数;
可以通过使用del语句删除单个或多个对象。例如:
del var_a, var_b
Python3 中有六个标准的数据类型,内置的 type() 函数可以用来查询变量所指的对象类型,还可以用 isinstance 来判断,例如isinstance(a, int)。
Number(数字)——不可变
String(字符串)——不可变,特殊的元组
Tuple(元组)——不可变,()
List(列表)——可变,[]
以上三个都属于Sequence(序列)
Set(集合)——可变
Dictionary(字典)——可变
注意:
type()不会认为子类是一种父类类型,isinstance()会认为子类是一种父类类型。
bool 是 int 的子类,True 和 False 可以和数字相加, True==1、False==0 会返回 True,但可以通过 is 来判断类型。例如:
>>> True==1
>True
>>>> False==0
>True
>>>> True+1
>2
>>>> False+1
>1
>```
**Number(数字)类型**
int(整型):如1,只有一种整数类型,表示长整型,没有Python2中的Long
bool(布尔型):如True
float(浮点型):如1.23,3E-2
complex(复数):1+2j,1.1+2.2j
**String(字符串)**
python中单引号和双引号使用完全相同,三引号(’’’或”””)可以指定多行字符串
反斜杠可以用来转义,使用r可以让反斜杠不发生转义。 如 r"this is a line with \n" 则\n会显示,并不是换行。这里的 r 指 raw,即 raw string。
Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
字符串的截取的语法格式如下:变量[头下标:尾下标:步长]
### 运算符
运算符 + 操作数 = 表达式
### 开发环境
**安装**
python.exe,Python的解释器 + 配套文件
**Python交互式解释器**
Python解释器有CPython、IPython、Jython、PyPy 等,顾名思义:
CPython 就是用 C 语言开发的了,是官方标准实现,拥有良好的生态,所以应用也就最为广泛了。
IPython 是在 CPython 的基础之上在交互式方面得到增强的解释器(http://ipython.org/)。
Jython 是专为 Java 平台设计的 Python 解释器(http://www.jython.org/),它把 Python 代码编译成 Java 字节码执行。
PyPy 是 Python 语言(2.7.13和3.5.3)的一种快速、兼容的替代实现(http://pypy.org/),以速度快著称。
**多平台**
Python3 可应用于多平台包括 Windows、Linux 和 Mac OS X。
Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)
Win 9x/NT/2000
Macintosh (Intel, PPC, 68K)
OS/2
DOS (多个DOS版本)
PalmOS
Nokia 移动手机
Windows CE
Acorn/RISC OS
BeOS
Amiga
VMS/OpenVMS
QNX
VxWorks
Psion
**Python 同样可以移植到 Java 和 .NET 虚拟机上。**
脚本执行前提
(1)有执行权限:chmod +x hello.py
(2)Python file.py
### 其他
直接在命令行输入python即可进入交互式编程模式
**脚本第一行的 #!/usr/bin/python 的解释**
脚本语言的第一行,只对 Linux/Unix 用户适用,用来指定本脚本用什么解释器来执行。
有这句的,加上执行权限后,可以直接用 ./ 执行,不然会出错,因为找不到 python 解释器。
\#!/usr/bin/python 是告诉操作系统执行这个脚本的时候,调用 /usr/bin 下的 python 解释器。
\#!/usr/bin/env python 这种用法是为了防止操作系统用户没有将 python 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到 env 设置里查找 python 的安装路径,再调用对应路径下的解释器程序完成操作。
\#!/usr/bin/python 相当于写死了 python 路径。
\#!/usr/bin/env python 会去环境设置寻找 python 目录,可以增强代码的可移植性,推荐这种写法。