Python 语言基础

作者:billy
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

语法特点

  1. 注释
    在 Python 中,通常包括3中类型的注释,分别是单行注释、多行注释和中文注释;
  • 单行注释:使用 “#” 作为单行注释的符号
    # 注释内容
  • 多行注释:使用三引号(’’’…’’’)或者("""…""")
'''
注释内容1
注释内容2
......
'''
"""
注释内容1
注释内容2
......
"""
  • 中文注释:设置文件所使用的字符编码类型
    # coding=gbk
    # coding:utf-8
  1. 代码缩进
    Python 不像其他程序设计语言(如 Java 或者 C++ 语言)采用大括号 “{}” 分割代码块,而是采用代码缩进和冒号 “:” 区分代码之间的层次
    在 Python 中,对于定义、函数定义、流程控制语句,以及异常处理语句等,行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进结束,则表示一个代码块的结束
    Python 对代码的缩进要求非常严格,同一级别的代码块的缩进量必须相同。如果不采用合理的代码缩进,将抛出 SyntaxError 异常;

  2. 编码规范
    Python 中采用 PEP 8 作为编码规范,其中 PEP 是 Python Enhancement Proposal 的缩写,翻译过来是 Python 增强建议书,而 PEP 8 表示版本,它是 Python 代码的样式指南。下面给出 PEP 8 编码规范中的一些应该严格遵云的条目:

  • 每个 import 语句只导入一个模块,尽量避免一次导入多个模块;
  • 不要在行尾添加分号 “;” ,也不要用分号将两条命令放在同一行;
  • 建议每行不超过 80 个字符,如果超过,建议使用小括号 “()” 将多行内容隐式连接起来。如果一个字符串文本在一行上显示不下,那么可以用小括号 “()” 将其分行显示;
  • 使用必要的空行可以增加代码的可读性;
  • 通常情况,运算符两侧、函数参数之间、逗号 “,” 两侧建议使用空格进行分割;
  • 应该避免在循环中使用 + 和 += 操作符累加字符串;这是因为字符串是不可变的,这样做会创建不必要的临时对象;推荐方法是将每个子字符串加入列表,然后在循环结束后使用 join() 方法连接列表;
  • 适当使用异常处理结构提高程序容错性,但不能过多依赖异常结构处理,适当的显示判断还是必要的;
  1. 命名规范
    命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序也可以运行,但是使用命名规范可以更加直观地了解代码所代表的含义。下面介绍 Python 中常用的一些命名规范:
  • 模块名尽量短小,并且使用全部小写字母,可以使用下划线分隔多个字母;
  • 包名尽量短小,并且使用全部小写字母,不推荐使用下划线;
  • 类名采用单词首字母大写形式(即 Pascal 风格)
  • 模块内部的类采用下划线 + Pascal 风格的类名组成;
  • 函数、类的属性和方法的命名规则同模块类似,也是全部采用小写字母,多个字母间用下划线分隔;
  • 常量命名时采用全部大写字母,可以使用下划线;
  • 使用单下划线开头的模块变量或者函数是受保护的,在使用 import * from 语句从模块中导入时这些变量或者函数不能被导入;
  • 使用双下划线开头的实例变量或方法是类私有的;

变量

  1. 保留字
    保留字是 Python 语言中已经被赋予特定意义的一些单词,开发程序时,不可以把这些保留字作为变量、函数、类、模块和其他对象的名称来使用。这里整理了一下 Python 中的保留字,如下所示:
andasassertbreakclasscontinue
defdelelifelseexceptfinally
forfromFalseglobalifimport
inislambdanonlocalnotNone
orpassraisereturntryTrue
whilewithyield

Python 中所有保留字是区分大小写的。例如,if 是保留字,但是 IF 就不属于保留字

  1. 标识符
    标识符可以简单地理解为一个名字,比如每个人都有一个名字,它主要用来标识变量、函数、类、模块和其他对象的名称。Python 语言标识符命名规则如下:
  • 由字母、下划线和数字组成,并且第一个字符不能是数字;
  • 不能使用 Python 中的保留字;
  • 区分字母大小写;
  • Python 中以下划线开头的标识符有特殊意义,一般应避免使用相似的标识符;
  1. 定义变量
    在 Python 中,不需要先声明变量名及其类型,直接赋值即可创建各种类型的变量。 另外,Python 是一种动态类型的语言,所以变量的类型可以随时变化
  • 内置函数 type() 可以返回变量的类型;
  • 内置函数 id() 可以返回变量的地址;

示例1:

>>> name = "小鸡啄米"		# 字符串类型的变量
>>> print( type(name) )
<class 'str'>
>>> name = 1024			# 整型的变量
>>> print( type(name) )
<class 'int'>

示例2:

>>> num = number = 1024
>>> id(num)
50766992
>>> id(number)
50766992

基本数据类型

  1. 数字
    在 Python 中,数字类型主要包括整数、浮点数和复数。
  • 整数
    在 Python 中,整数包括正整数、负整数和 0,并且它的位数是任意的(当超过计算机自身的计算功能时,会自动转用高精度计算),如果需要指定一个非常大的整数,只需要写出其所有位数即可。
    1)十进制:不能以 0 作为十进制数的开头(0除外)
    2)八进制:必须以 0o / 0O 开头
    3)十六进制:必须以 0x / 0X 开头
    4)二进制:只有 0 和 1 两个基数

  • 浮点数
    在使用浮点数计算时,可能会出现小数位数不确定的情况。

示例:

>>> 0.1 + 0.1
0.2
>>> 0.1 + 0.2
0.30000000000000004

对于这种情况,所有语言都存在这个问题,暂时忽略多余的小数位即可

  • 复数
    Python 中的复数与数学中的复数的形式完全一致,都是由实部和虚部组成,并且使用 j 或者 J 表示虚部。当表示一个复数时,可以将其实部和虚部相加。例如,一个复数,实部为 3.14,虚部为 1.25j,那么这个复数就是 3.14 + 1.25j。
  1. 字符串
    字符串就是连续的字符序列,可以是计算机所能表示的一切字符的集合。在 Python 中字符串属于不可变序列,通常使用单引号 ’ ’ 、双引号 " " 或者三引号 ‘’’ ‘’’ 表示一个字符串。其中,单引号和双引号中的字符序列必须在一行上,而三引号内的字符序列可以分布在连续的多行上。

常用的转义字符及说明:

转义字符说明
\续航符
\n换行符
\0
\t水平制表符,用于横向跳到下一个制表位
\"双引号
\’单引号
\\反斜杠
\f换页
\0dd八进制数,dd 代表的字符,如 \012 代表换行
\xhh十六进制数,hh 代表的字符,如 \x0a 代表换行

在字符串定界符引号前面加上 r \ R,那么该字符串将原样输出,其中的转义字符将不转义
示例:

>>> print( "何以解忧\n唯有杜康" )
何以解忧
唯有杜康
>>> print( r"何以解忧\n唯有杜康" )
何以解忧\n唯有杜康
  1. 布尔类型
    布尔类型主要用来表示真或假的值。在 Python 中标识符 True 和 False 被解释为布尔值。另外布尔值可以转化为数值,其中True 表示 1,False 表示 0。

Python 中的布尔类型的值可以进行数值运算。例如,“False + 1” 的结果为1。但是不建议对布尔类型的值进行数值运算。

在 Python 中,所有的对象都可以进行真值测试。下面列出几种情况的值都为假:

  • False 或 None;
  • 数值中的零,包括 0、0.0、虚数 0;
  • 空序列,包括字符串、空元祖、空列表、空字典;
  • 自定义的对象实例,该对象的 bool 方法返回 False 或者 len 方法返回 0;
  1. 数据类型转换
    Python 是动态类型的语言,也称为弱类型语言,虽然不需要先声明变量的类型,但有时仍然需要用到类型转换,下表所示函数为各种数据类型之间的转换:
函数作用
int(x)将 x 转换成整形类型
float(x)将 x 转换成浮点型类型
complex(real [,imag])创建一个复数
str(x)将 x 转换成字符串
repr(x)将 x 转换成表达式字符串
eval(str)计算在字符串中的有效 Python 表达式,并返回一个对象
chr(x)将整数 x 转换成一个字符
ord(x)将一个字符 x 转换成它对应的整数值
hex(x)将一个整数 x 转换成一个十六进制的字符串
oct(x)将一个整数 x 转换成一个八进制的字符串

基本输入输出

  1. 使用 input() 函数输入
    在 Python 中使用内置函数 input() 可以接收用户的键盘输入,用法如下:
    name = input( "请输入名字:" )
    在 Python 3.x 中,无论输入的是数字还是字符都将被作为字符串读取,如果需要接收数值,需要把接收到的字符串做类型转换,用法如下:
    age = int( input( "请输入数字:" ) )

  2. 使用 print() 函数输出
    在 Python 中使用内置函数 print() 可以将结果输出到 IDLE 或者标准控制台,用法如下:
    print( 输出内容 )
    默认情况下,一条 print() 语句输出后会自动换行,如果想要一次输出多个内容,而且不换行,可以将要输出的内容使用英文半角的逗号分隔,用法如下:

>>> a = 10
>>> b = 6
>>> print(a,b)		# 输出变量 a 和 b
10 6

在输出时,也可以把结果输出到指定文件,用法如下:

>>> fp = open( r"D:\demo.txt", "a+" )		# 打开文件
>>> print( "hello world !", file = fp )		# 输出到文件中
>>> fp.close()					# 关闭文件

更多请参考

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值