Python入门笔记(二)

人生苦短 我用Python


Python中的注释

什么是注释?

  • 是指程序员在代码中对代码功能解释说明的文字,可以提高代码的可读性
  • 注释的内容将被Python解释器忽略,不被计算机执行

注释的分类?

  • 单行注释
    • 以“#”作为单行注释的符号,作用范围从“#”开始直到换行为止
  • 多行注释
    • Python中并没有单独的多行注释标记,将包含在一对三引号[‘’’…’’’]OR[“””…”””]之间的代码称为多行注释
  • 中文注释声明
    • # coding:utf-8 或 #coding=utf-8 或 #-*-coding:utf-8-*-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 10.单行注释
# 要求从键盘去输入出生年份,举例:1998
year = input('请输入您的出生年份:')

year = input('请输入您的出生年份:') # 要求从键盘去输入出生年份,举例:1998

# 11.多行注释
'''
参考视频:马士兵教育
分节名:11.多行注释
创建人:Paneer
'''
# -*- OR -*- #
"""
参考视频:马士兵教育
分节名:11.多行注释
创建人:Paneer
"""

# 12.中文声明注释

# 在Python2.x中,使用中文注释时必须要加上中文声明注释。在Python3.x中可加可不加。
# coding:utf-8
# 此声明若加的话务必加在代码首行。
# 写好注释至关重要哦~

代码缩进

Python语言采用严格的“缩进”来表示程序逻辑

  • 缩进是指每行语句开始前的空白区域,用来表示Python程序间的包含和层次关系
  • 一般代码不需要缩进,顶行编写且不留空白
  • 类定义、函数定义、流程控制语句,以及异常处理语句等,行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进结束则表示一个代码块的结束
  • 缩进可以使用空格或Tab键来实现,通常情况下采用四个空格作为一个缩进量
1
2
3
4
5
6
7
8
9
10
# 13.代码缩进
print('hello')
print('hello') #此情况下会报错:IndentationError: unexpected indent,解决办法是删掉第二个print前的空格

# 类的定义
class Student:
pass
# 函数定义
def fun():
pass

在Python交互式模式中运行*.py文件

首先确保电脑已经安装好python且配置好了环境变量,其语法格式为:

1
python 完整文件名(包括路径)

数据类型和基本运算符

保留字与标识符

保留字:
保留字是Python已经被赋予特定意义的一些单词,在开发程序时,不可以把这些保留字作为变量、函数、类、模块和其他对象的名称来使用
保留字表如下所示:

and as assert break class continue def del elif else except
finally for from False global if import in is lambda nonlocal
not None or pass raise return try True while with yield

注:保留字严格区分大小写,只有TrueFalseNone为首字母大写。

保留字查看

1
2
3
# 保留字的查看
import keyword
print(keyword.kwlist)

标识符:
标识符可以简单的理解为是一个名字,它主要用来标识变量、函数、类、模块和其他对象的名称。

Python标识符的命名规则:

  • 可以是字母、下划线“_”和数字,并且第一个字符不能是数字
  • 不能使用Python中的保留字
  • 标识符严格区分大小写
  • 以下划线开头的标识符有特殊意义,一般应避免使用相似的标识符
  • 允许使用中文作为标识符,但不建议

标识符的命名规范:

  • 模块名尽量短小,并且尽量全部使用小写字母,可以使用下划线分隔多个字母。如 grame_main
  • 包名尽量短小,并且尽量全部使用小写字母,不推荐使用下划线。如 com.paneer,不推荐com_paneer
  • 类名采用单词首字母大写形式(Pascal风格)。如 MyClass
  • 模块内部的类采用“_”+Pascal风格的类名组成。如在MyClass中的内部类 _InnerMyClass
  • 函数、类的属性和方法的命名,全部使用小写字母,多个字母之间使用下划线分隔
  • 常量命名时采用全部大写字母,可以使用下划线
  • 使用单下划线“_”开头的模块变量或函数是受保护的,在使用from xxx import *语句从模块中导入时,这些模块变量或函数是不能被导入的
  • 使用双下划线“__“开头的实例变量或方法是类私有的
  • 以双下划线开头和结尾的是Python的专用标识。如 __init__() 表示初始化函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 2.标识符的规范

'''
每一个*.py文件都是一个模块,模块命名应尽量使用小写字母并使用下划线分隔
这些*.py文件所在的文件夹称作包,包命名应尽量使用小写字母不推荐使用下划线
'''


class MyClass: # 新建一个名为MyClass的类,采用Pascal风格
class _InnerMyClass: # 新建一个名为 _InnerMyClass 的内部类
pass


# 函数 fun & fun_name 的定义
def fun():
pass


def fun_name():
pass

Python中的变量

变量是指保存和表示数值的一种语法元素,可以简单的理解为“名字”。
变量的值是可以改变的,可以通过赋值方式被修改。

例如,word='Paneer真帅'即是将“Paneer真帅”赋值给了变量“word”

可以理解为去菜鸟驿站取快递,我只需要取件码就能找到自己的快递,此时我的取件码就是一个变量,它代表的那个位置上的快递是我的,因为是菜鸟驿站的工作人员给它赋值了。

变量的定义

其语法结构为:

变量名=value

变量的使用

Python是一种动态类型的语言,变量的类型可以随时变化

  • 使用内置函数type()可以查看变量的数据类型

Python中允许多个变量指向同一个值

  • 使用内置函数id()可以返回变量所指的内存地址
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 3.变量的定义和使用
luck_number=8 # 创建一个整型变量luck_number,赋值为8
my_name='Paneer' # 创建一个字符串类型变量
print(my_name,'的幸运数字是:',luck_number)
print('luck_number的数据类型是:',type(luck_number))

# 变量的值可以更改
luck_number='Emily真圆'
print('luck_number的数据类型是:',type(luck_number)) # 此时其数据类型就是 str型(字符串型)了

# Python允许多个变量指向同一个值
no=number=502 # 给no 和number 都赋值为502
print(no,number)
print(id(no)) # 输出no 所指向的内存地址
print(id(number)) #输出number 所指向的内存地址,会发现与no 的相同

变量命名应遵循以下几条规则

  • 变量名必须是一个有效的标识符
  • 变量名不能使用Python中的保留字
  • 慎用小写字母l和大写字母O
  • 应选择有意义的单词作为变量名

同样的,常量也应遵循以下规则

  • 常量就是在程序运行过程中值不能改变的量。如PI
  • Python中没有定义常量的保留字
  • 常量规定使用大写字母和下划线组成
  • 常量首次赋值之后,还是可以被其他代码修改的

基本数据类型

数值类型

整数类型特点

  • 表示整数数值,即没有小数部分的数值
  • 正整数、负数和0
  • 理论取值范围为(负无穷,正无穷)
  • 整数的表示类型
  • 不可变的数据类型
进制种类 引导符号 概述
十进制 默认情况,如 365,257
二进制 0b或0B 由0,1组成,如 0b101,0B1010
八进制 0o或0O 由0-7组成,如 0o367,0O666
十六进制 0x或0X 由0-9,a(A)-f(F)组成,如 0x98A,0X89F
1
2
3
4
5
6
7
8
9
# 4.整数类型
num=987 # 默认十进制
num1=0b10100101 # 使用二进制表示整数
num2=0o765 # 使用八进制表示整数
num3=0x98AF # 使用十六进制表示整数
print(num) # 输出全部为十进制
print(num1) # 输出全部为十进制
print(num2) # 输出全部为十进制
print(num3) # 输出全部为十进制

浮点数类型

  • 表示带有小数点的数
  • 浮点数由整数部分和小数部分组成
  • Python中浮点数类型必须要有小数部分,小数部分可以是0
  • 浮点数可以使用科学计数法表示
  • 两个浮点数相加,有一定概率运算结果后增加一些“不确定的”尾数
  • 使用内置函数round()可以限定运算结果需要保留的小数位数
  • 不可变数据类型
1
2
3
4
5
6
7
8
9
10
# 5.浮点数类型
height=180.1
print(type(height)) # 可以得出height 的数据类型为float 型
x=10
y=10.0
print(type(x)) # x为int 型
print(type(y)) # y为float 型
# 浮点数相加尾数不确定问题
print(0.1+0.2) # 得结果为 0.30000000000000004,有一不确定尾数
print(round(0.1+0.2,1)) # 保留一位小数

复数类型

  • Python中复数与数学中的复数形式完全一致
  • 复数由实部和虚部组成
  • j是复数的一个基本单位,被定义为 j=$\sqrt{-1}$ ,又称虚数单位
  • .real获取实数部分,.imag获取虚数部分
  • 不可变数据类型
1
2
3
4
5
# 6.复数类型
z=123+456j # 定义复数类型 complex型
print(type(z))
print('实数部分:',z.real) # 输出实数部分
print('虚数部分:',z.imag) # 输出虚数部分

字符串类型

  • 字符串就是连续的字符序列,,可以表示计算机所能识别的一切字符
  • 不可变数据类型,,即不可变字符序列
  • 单行字符串使用’…’或”…”
  • 多行字符串使用’’’…’’’或”””…”””
1
2
3
4
5
6
7
8
9
10
11
12
13
# 7.字符串类型
# 单行字符串
city='菏泽'
address="山东省菏泽市"
print(city)
print(address)

# 多行字符串
info='''
地址:山东省菏泽市
收件人:Paneer
'''
print(info)