【Python】基础知识
关键字
查看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 可以和数字相加, True1、False0 会返回 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 目录,可以增强代码的可移植性,推荐这种写法。