Python语言的基本语法规则
一、程序的基本语法元素
- 程序的格式框架
缩进表达程序的格式框架 - 缩进
要求:
(1)严格明确: 缩进是语法的一部分,缩进不 正确程序会运行错误
(2)所属关系:表达代码间包含和层次关系的唯一手段
(3)长度一致:对于缩进,在同一程序内要保持长度一致,一般用4个空格或者1个TAB来表示 - 注释
Python中单行注释以 # 开头,实例如下:#注释 print("Hello, Python!")
Python中多行注释以多行 # 开头,或者 “”“注释内容”""、或者’’‘注释内容’’'实例如下:#注释 print("Hello, world!")
#注释 print("Hello, Python!")
"""注释 print("Hello, world!") 注释 print("Hello, Python!")"""
- 变量
程序中用于保存和表示数据的占位符号 - 命名
变量采用标识符(名字)来表示,关联标识符的过程叫命名
命名规则:大小写字母、数字、下划线和汉字等字符及组合
如:TempStr,Python_great,我在学Python
注意事项:大小写敏感,首字符不能是数字,不与保留字相同
如:Python和python是不同变量,123python是不合法的 - 保留字
保留字是被编程语言内部定义并保留使用的标识符
Python语言有33个保留字(关键字)
保留字是编程语言的基本单词,大小写敏感,如:if是保留字,If是变量
保留字 | 说明 |
and | 用于表达式运算,逻辑与操作 |
as | 用于类型转换 |
assert | 断言,用于判断变量或条件表达式的值是否为真 |
break | 中断循环语句的执行 |
class | 用于定义类 |
continue | 继续执行下一次循环 |
def | 用于定义函数或方法 |
del | 删除变量或序列的值 |
elif | 条件语句,与if,else结合使用 |
else | 条件语句,与if,elif结合使用,也可用于异常和循环语句 |
except | except包含捕获异常后的操作代码块,与try,finally结合使用 |
exec | 用于执行python 语句 |
for | for循环语句 |
finally | 用于异常语句,出现异常后,始终要执行finally,包含的代码块,与try,except结合使用 |
from | 用于导入模块,与import结合使用 |
globe | 定义全局变量 |
if | 条件语句,与else,elif结合使用 |
import | 用于导入模块,与from结合使用 |
in | 判断变量是否在序列中 |
is | 判断变量是否为某个类的实例 |
lambda | 定义匿名变量 |
not | 用于表达式运算,逻辑非操作 |
or | 用于表达式运算,逻辑或操作 |
pass | 空的类,方法,函数的占位符 |
print | 打印语句 |
raise | 异常抛出操作 |
return | 用于从函数返回计算结果 |
try | try包含可能会出现异常的语句,与except,finally结合使用 |
while | while的循环语句 |
with | 简化python的语句 |
yield | 用于从函数依此返回值 |
nonlocal | |
false |
- 数据类型
详细请见后文 - 赋值语句
赋值符号:可以使用等号(=)向变量赋值或修改值,=被称为赋值符号 - 引用
二、基本输入输出函数
1.input():的返回值始终是字符串,因此在获取输入后需要按照需要转化 数据类型。
如:>>> temp = input("请输入一个数字:")
请输入一个数字:3
>>> type(temp)
<class 'str'>
>>> a= int(temp) + 2
>>> a
5
否则会出现错误
2.eval():由官方文档将字符串str当成有效的表达式来求值并返回计算结果。
如:
>>> a= "1+1"
>>> b = eval(a)
>>> b
2
由上文中提到的的input()的特性,可以知道两者连用可以直接进行程序计算操作,但是此函数也存在着极大的安全隐患,如:
>>> b = eval(input("请输入"))
请输入 __import__('os').system('dir')
驱动器 C 中的卷是 Windows
卷的序列号是 ERTY-BNMK
C:\Users\.. 的目录
2019/01/03 11:46 <DIR> .
2019/01/03 11:46 <DIR> ..
......
8 个文件 24,820 字节
30 个目录 32,559,316,992 可用字节
如果这样的应用部署在服务器上,用户的恶意输入可能会直接操控服务器的系统。如用python的语句读取文件等等。因此因注意避免此类问题,具体查看官方说明。
三、源程序的书写风格
这一部分是每种程序语言都应当注意的,程序的书写风格并不会直接影响程序的运行,但是良好的书写风格,可以使阅读代码时更加简洁明了,避免书写造成的程序语法错误,在debug的时候更容易找到问题所在。
如:
- 注释要短小精悍,不应每句都注释,但在适当的位置应当有注释,例如说明程序的作用等。
- 重复使用的程序段应当封装函数,嵌套过于复杂的函数应当重构函数。
- 在写类或函数的变量时要注意排序,如写一个函数变量为(a,b,c),写另外一个函数为(b,c,a),在调用这样的函数就容易产生困扰。因为函数一多就很难记得清顺序,在后面debug时就要反复翻看前面的代码,造成不必要的麻烦。
- 还有很多琐碎的习惯需要养成如在符号两端加空格、函数、类的命名规则等等,学会使用程序语言完成程序的功能只是基本目标,将程序写的简洁优美简洁才是功底所在。
四、Python语言的特点
- 简单
Python是一种代表简单思想的语言。 - 易学
Python有极其简单的语法。 - 免费、开源
Python是FLOSS(自由/开放源码软件)之一。 - 高层语言
使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节。 - 可移植性
Python已被移植到很多平台,这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC。 - 解释性
可以直接从源代码运行。在计算机内部,python解释器把源代码转换为字节码的中间形式,然后再把它翻译成计算机使用的机器语言。 - 面向对象
python既支持面向过程编程也支持面向对象编程。 - 可扩展性
部分程序可以使用其他语言编写,如c/c++。 - 可嵌入型
可以把Python嵌入到c/c++程序中,从而提供脚本功能。 - 丰富的库
Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。