Python初学者入门随笔 01 Python 语法学习
1. 中文编码
Python 中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*-
或者 #coding=utf-8
就行了。
2. print
打印 Hello, World!,个人理解等同于 JavaScript 中的 console.log()
print "Hello, World!"
Hello, World!
3. Python 标识符
在 Python 里,标识符由字母
、数字
、下划线
组成。
在 Python 中,所有标识符可以包括英文、数字以及下划线_
,但不能以数字开头。
Python 中的标识符是区分大小写的。
以下划线开头的标识符是有特殊意义的。以单下划线开头_foo
的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import *
而导入。
以双下划线开头的 __foo
代表类的私有成员,以双下划线开头和结尾的 __foo__
代表 Python 里特殊方法专用的标识,如 __init__()
代表类的构造函数。
Python 可以同一行显示多条语句,方法是用分号 ;
分开,如:
print 'Hello';print 'World';
Hello
World
4. Python 保留字符
下面的列表显示了在 Python 中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。
所有 Python 的关键字只包含小写字母
。
保留字 | 说明 |
---|---|
and | 用于表达式运算,逻辑与操作 |
as | 用于类型转换 |
assert | 断言,用于判断变量或条件表达式的值是否为真 |
break | 中断循环语句的执行 |
class | 用于定义类 |
continue | 继续执行下一次循环 |
def | 用于定义函数或方法 |
del | 删除变量或者序列的值 |
elif | 条件语句,与 if、else 结合使用 |
else | 条件语句,与 if、elif 结合使用。也可以用于异常和循环使用 |
exceptexcept | 包括捕获异常后的操作代码,与 try、finally 结合使用 |
exec | 用于执行 Python 语句 |
for | 循环语句 |
finally | 用于异常语句,出现异常后,始终要执行 finally 包含的代码块。与 try、except 结合使用 |
from | 用于导入模块,与 import 结合使用 |
global | 定义全局变量 |
if | 条件语句,与 else、elif 结合使用 |
import | 用于导入模块,与 from 结合使用 |
in | 判断变量是否存在序列中 |
is | 判断变量是否为某个类的实例 |
lambda | 定义匿名函数 |
not | 用于表达式运算,逻辑非操作 |
or | 用于表达式运算,逻辑或操作 |
pass | 空的类,函数,方法的占位符 |
打印语句 | |
raise | 异常抛出操作 |
return | 用于从函数返回计算结果 |
try | 包含可能会出现异常的语句,与 except、finally 结合使用 |
while | 循环语句 |
with | 简化 Python 的语句 |
yield | 用于从函数依次返回值 |
5. 行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {}
来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。如下所示:
if True:
print "True"
else:
print "False"
因此,在 Python 的代码块中必须使用相同数目的行首缩进空格数。
建议你在每个缩进层次使用 单个制表符
或 两个空格
或 四个空格
, 切记不能混用。
6. 多行语句
Python语句中一般以新行作为语句的结束符。
但是我们可以使用斜杠 \
将一行的语句分为多行显示,如下所示:
one = 1
two = 2
three = 3
total = one + \
two + \
three
语句中包含 []
, {}
或 ()
括号就不需要使用多行连接符。如下实例:
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
7. Python 引号
Python 可以使用引号 '
、双引号 "
、三引号 '''
或 """
来表示字符串,引号的开始与结束必须的相同类型的。
其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。
word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""
8. Python 注释
Python 中单行注释采用 #
开头。
注释可以在语句或表达式行末:
# -*- coding: UTF-8 -*-
# 文件名:test.py
# 第一个注释
print "Hello, Python!" # 第二个注释
Python 中多行注释使用三个单引号 '''
或三个双引号 """
。
# -*- coding: UTF-8 -*-
# 文件名:test.py
'''
这是多行注释,使用单引号。
这是多行注释,使用单引号。
这是多行注释,使用单引号。
'''
"""
这是多行注释,使用双引号。
这是多行注释,使用双引号。
这是多行注释,使用双引号。
"""
9. Python 空行
函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
空行与代码缩进不同,空行并不是 Python 语法的一部分。书写时不插入空行,Python 解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
记住:空行也是程序代码的一部分。
10. 等待用户输入
下面的程序执行后就会等待用户输入,按回车键
后就会退出:
# -*- coding: UTF-8 -*-
raw_input("按下 enter 键退出,其他任意键显示...\n")
# -*- coding: UTF-8 -*-
name = raw_input('输入姓名:')
age = raw_input('输入年龄:')
#运行如下:
输入姓名:
#输入后敲回车键
输入姓名:Sampson
输入年龄:
#再一次输入后敲回车键
输入姓名:Sampson
输入年龄:18
11. 同一行显示多条语句
Python 可以在同一行中使用多条语句,语句之间使用分号 ;
分割,以下是一个简单的实例:
import sys;x = 'Sampson';sys.stdout.write(x + '\n')
#运行如下:
Sampson
12. Print 输出
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,
x = "a"
y = "b"
# 换行输出
print x
print y
print '-----分割线-----'
# 不换行输出
print x,
print y
print '-----分割线-----'
# 不换行输出
print x, y
运行如下:
a
b
-----分割线-----
a b
-----分割线-----
a b
13. 多个语句构成代码组
缩进相同的一组语句构成一个代码块,我们称之代码组。
像 if
、while
、def
和 class
这样的复合语句,首行以关键字开始,以冒号 :
结束,该行之后的一行或多行代码构成代码组。
我们将首行及后面的代码组称为一个子句 clause
。
如下实例:
if expression :
suite
elif expression :
suite
else :
suite
14. 命令行参数
很多程序可以执行一些操作来查看一些基本信息,Python 可以使用 -h
参数查看各参数帮助信息
$ python -h
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit
[ etc. ]
我们在使用脚本形式执行 Python 时,可以接收命令行输入的参数