python 基础语法(第一天)
本章学习内容:
1、python 语言的编写规范
1.1、注释规范
1.2、代码缩进规范
1.3、编码规范
2、保留字与标识符
2.1、保留字
2.2、标识符
1、python 语言的编写规范
1.1、注释规范
1.1.1单行注释
单行注释使用“#”号作为单行注释的符号。#号后面的所有内容都为注释内容。语法如下:
第一种形式:
# 要求输入身高,单位为m 如1.70
height = float(input("请输入您的身高:"))
第二种形式:
height = float(input("请输入您的身高:")) #要求输入身高,单位为m
注意:①、在添加注释时,一定要有意义,即注释能充分解释代码功能及用途。
②、注释可以出现在代码的任意位置,但不能分隔关键字和标识符。
多学两招 :在python 自带的 IDLF 开发环境中,快捷键 <ALT+3> 选择代码注释掉,<ALT+4> 取消注释掉的代码
1.1.2、多行注释
在python中,并没有一个单独的多行注释,而是将包含在一对三引号 ('''.....''')或者 ("""....""")之间,并且不属于任何语句的内容都可视为注释,这样的代码将被解释器忽略,由于这样的代码可以分为多行编写,所以称为多行注释。
语法如下:
'''
注释内容1
注释内容2
.....
'''
或者
"""
注释内容1
注释内容2
......
"""
注意:① 多行注释通常用来为python 文件、模块、类或者函数等添加版权、功能等信息。
② 在python 中,三引号('''.....''')或者(""".....""")是字符串定界符,如果三引号作为语句的一部分出现,就不是注释,而是字符串。
1.1.3、中文编码声明注释
该编码的出现主要是为了解决python 2.x中不支持直接写中文的问题,在python 3.x中,虽然该问不存在了,但是为了规范页面的编码,同时方便其他程序员及时了解所用的编码,建议在文件开始加上中文编码什么注释。
语法格式如下:
# _*_ coding: 编码 _*_
或者
# coding = 编码
注意:在上面的语法中,编码为:文件所使用的字符串类型,如果采用UTF-8编码,则设置为 UTF-8 ;如果采用GBK编码,则设置为gbk或者cp936.
列如指定编码为UTF-8
1.2、代码缩进规范
说明:
① python 不像其他程序设计语言(如:C 语言、Java)它们采用的大括号 {} 来作为分隔代码块。而python 采用代码缩进和冒号 " : " 区分代码之间的层次。
② 缩进可以使用空格或<Tab>键实现,其中使用空格时,通常情况下采用4个空格作为一个缩进量,而使用 Tab 键时,则采用一个 Tab 键作为缩进量,程序员通常都采用空格进行缩进。
③ 在python 中,对于 类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进的结束,则表示一个代码块的结束。
列如:下面代码中的缩进为正确的缩进:
height = float(input("请输入您的身高:")) # 输入身高
weight = float(input("请输入您的体重:")) # 输入体重
bmi = weight/(height*height) # 计算BMI指数
# 判断身材是否合理
if bmi<18.5:
print("您的BMI指数为:"+str(bmi)) # 输出BMI指数
print("体重过轻 ~@_@~")
if bmi>1.85 and bmi<24.9:
print("您的BMI指数为:"+str(bmi)) # 输出BMI指数
print("正常范围,注意保持 (-_-)")
if bmi>= 24.9 and bmi<29.9:
print("您的BMI指数为:"+str(bmi)) # 输出BMI指数
print("您体重过重 ~@_@~")
if bmi >= 29.9:
print("您的BMI指数为:"+str(bmi)) # 输出BMI指数
print("肥胖 ^@_@^")
注意:在python 中,对代码缩进要求非常严格,同一级别的代码块的缩进量必须相同。如果同一级的代码块缩进量不同,运行代码时就会报 "SyntaxError" 异常错。列如:
# 判断身材是否合理
if bmi<18.5:
print("您的BMI指数为:"+str(bmi))
print("体重过轻")
if bmi>24.9:
这段代码中,两个 if 之间的就称为同一级的代码块,它们的缩进量就不同,就会报错。
多学两招:在python 自带的开发软件 "IDLE" 中,可以通过选择菜单中的 "Format"→"Indent Region"菜单项(快捷键<Ctr+]>),将选中的代码缩进(向右移动指定的缩进量)也可以通过主菜单中的 "Format"→"Dedent Region" 菜单选项(快捷键(<Ctr+[>)对代码进行反(向左)缩进。
1.3、编码规范
本小节将对python代码编写规则及命名规范进行介绍
1.3.1、编写规则
python 中采用 PEP 8 (python增强建议书的缩写,8为版本号)作为编码规范,下面介绍 PEP 8 中编码规范中的的一些应该严格遵守的条目:
● 每个 import 语句只导入一个模块,尽量避免一次导入多个模块。列如:
推荐写法:
import os # import 语句作用就是用来导入模块的,它可以出现在程序中的任何位置
import sys
不推荐写法:
import os,sys
● 不要在行尾添加分号 ";" 也不要用分号将两条命令放在同一行,列如:
推荐写法:
print("要么出众")
print("要么出局")
不推荐写法:
print("要么出众");print("要么出局")
height = float("请输入您的身高:"));
weight = float("请输入您的体重:"));
● 每行不超过80个字符,如果超过,建议使用小括号 "()" 将多行内容隐式的连接起来,而不推荐使用反斜杠 "\" 进行连接,(用反斜杠来进行换,也能正常运行)。一般超过字符的有两种情况,这两种情况如果超过了就需要换行了。如下两种情况:
⑴ 字符串超过80个字符;
⑵ 正常的语句超过80个字符;
如果超过80个字符该怎么办,列如:
if bmi >=18.5 and (
bmi < 24.9):
这段代码比如说是语句超过了80个字符,就在第一个括号按回车换行。(这段代码其实没有超过80个字符,是演示换行的方法用的)
如果字符串超过了怎么办,列如:
s = ("我一直认为我是一只蜗牛。我一直在爬,也许还没爬到金字塔的顶端。"
"但是只要你在爬,就足以给自己留下生命感动的日子。")
注意:有一下两种情况不能换行:
① 导入模块的语句过长
② 注释里面的URL
1.3.2 空行的使用
⑴ 使用必要的空行可以增加代码的可读性。一般在顶级定义(如函数或者类的定义)之间空两行,而方法定义之间空一行。另外在用于分隔某些功能的位置也可以空一行。
⑵ 通常情况下,运算符两侧、函数参数之间、"," 两侧建议使用空格进行分隔。
⑶ 应该避免在循环中使用 "+" 和 "+=" 运算符累加字符串。这是因为字符串是不可变得,这样做会创建不必要的临时对象。推荐将每个字符串加入列表,然后在循环结束后使用 join() 方法连接列表。
⑷ 适当使用异常处理结构提高程序容错性,但不能过多依赖异常处理结构,适当的显式判断还是必要的。
1.3.3、命名规范
命名规范应该遵循以下几点:
① 模块名尽量短小,并且全部使用小写字母,可以使用下划线分隔多个字母,列如:game_main、bmiexponet。
② 包名尽量短小,并且全部使用小写字母,不推荐使用下划线,列如:com.mingrisoft、com.mr、com.mr.book。
③ 类名采用单词的首写字母大写形式(Pascal风格),列如定义一个借书类可以命名为:BorrowBook
④ 模块内部的类采用下划线 "_" + Pascal风格的类名组成。列如在BorrowBook类中的内部类可以使用:_BorrowBook 命名。
⑤ 函数、类的属性和方法的命名规则同模块名命名一样。
⑥ 常量命名时全部使用大写字母,可以使用下划线。
⑦ 使用单下划线 "_" 开头的模块变量或函数是受保护的,比如:在使用导入语句:from ***(模块名) import 语句从模块中导入时,这些变量或者函数不能被导入的。
⑧ 使用双下划线 "__" 开头的实例变量或方法类是私有的。
2、保留字与标识符
2.1、保留字
保留字是python语言中一些已被赋予特定意义的单词,在开发程序时,不可以把这些保留字作为:变量、函数、类、模块和其他对象的名称来使用。
表2.1 python 中的保留字
and | as | assert | break | class | continue | def | del |
elif | else | except | finally | for | form | False | global |
if | import | in | is | lambda | nonlocal | not | None |
or | pass | raise | return | try | True | while | with |
注意:所有保留字是区分字母大小写的,列如:if是保留字,而IF就不属于保留字。如果在开发程序时,使用保留字作为模块、函数、类、或者变量等的名称,则会提示报错:"invalid syntax"
多学两招:在IDLE中输入:
import keyword
keyword.kwlist
输出结果就可以查看python中的所有保留字。
2.2、标识符
标识符可简单的理解为一个名字,比如说每个人都有自己的名字,它主要是用来标识:变量、函数、类、模块和其他对象的名称。标识符也有命名规则如下几点:
① 由字母、下划线 "_"和数字组成,第一个字符不能是数字。
② 不能使用python中的保留字
③ 区分字母大小写
说明:标识符中的字母是严格区分大小写的,两个同样的单词,如果大小写不一样,所代表的意义是完全不同的。
④ 在python中以下划线开头的标识符有特殊意义的,一般应避免使用相似的标识符。如一下几点:
● 以单下划线开头的标识符(如_width)表示不能直接访问的类属性,另外,也不能通过 "from ***(模块名) import *"导入。
● 以双下划线开头的标识符如:(__add)标识类的私有成员。
● 以双下划线开头和结尾的是python里专用的标识,如:
__init__() 标识函数构造。