程序是指令的集合,写程序就是用指令控制计算机做我们想让它做的事情。
计算机的硬件系统通常由五大部件构成,包括:运算器、控制器、存储器、输入设备和输出设备。其中,运算器和控制器放在一起就是我们常说的中央处理器,它的功能是执行各种运算和控制指令。刚才我们提到过程序是指令的集合,写程序就是将一系列的指令按照某种方式组织到一起,然后通过这些指令去控制计算机做我们想让它做的事情。目前,我们使用的计算机基本都是“冯·诺依曼体系结构”的计算机,这种计算机有两个关键点:一是要将存储设备与中央处理器分开;二是将数据以二进制方式编码。
1. 变量和类型
在编程语言中,变量是数据的载体,简单的说就是一块用来保存数据的内存空间,变量的值可以被读取和修改,这是所有计算和控制的基础。
Python中的数据类型很多,而且也允许我们自定义新的数据类型(这一点在后面会讲到),这里我们需要先了解几种常用的数据类型。
- 整型(
int
):Python中可以处理任意大小的整数,而且支持二进制(如0b100
,换算成十进制是4)、八进制(如0o100
,换算成十进制是64)、十进制(100
)和十六进制(0x100
,换算成十进制是256)的表示法。 - 浮点型(
float
):浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,浮点数除了数学写法(如123.456
)之外还支持科学计数法(如1.23456e2
)。 - 字符串型(
str
):字符串是以单引号或双引号括起来的任意文本,比如'hello'
和"hello"
。 - 布尔型(
bool
):布尔值只有True
、False
两种值,要么是True
,要么是False
。
1.1 变量命名
对于每个变量我们需要给它取一个名字,就如同我们每个人都有自己的名字一样。在Python中,变量命名需要遵循以下这些规则,这些规则又分为必须遵守的硬性规则和建议遵守的非硬性规则。
- 硬性规则:
- 规则1:变量名由字母、数字和下划线构成,数字不能开头。需要说明的是,这里说的字母指的是Unicode字符,Unicode称为万国码,囊括了世界上大部分的文字系统,这也就意味着中文、日文、希腊字母等都可以作为变量名中的字符,但是像
!
、@
、#
这些特殊字符是不能出现在变量名中的,而且我们强烈建议大家尽可能使用英文字母。 - 规则2:大小写敏感,简单的说就是大写的
A
和小写的a
是两个不同的变量。 - 规则3:变量名不要跟Python语言的关键字(有特殊含义的单词,后面会讲到)和保留字(如已有的函数、模块等的名字)发生重名的冲突。
- 规则1:变量名由字母、数字和下划线构成,数字不能开头。需要说明的是,这里说的字母指的是Unicode字符,Unicode称为万国码,囊括了世界上大部分的文字系统,这也就意味着中文、日文、希腊字母等都可以作为变量名中的字符,但是像
- 非硬性规则:
- 规则1:变量名通常使用小写英文字母,多个单词用下划线进行连接。
- 规则2:受保护的变量用单个下划线开头。
- 规则3:私有的变量用两个下划线开头。
1.2 变量的使用
"""
使用变量保存数据并进行加减乘除运算
Version: 0.1
Author: 骆昊
"""
a = 45 # 变量a保存了45
b = 12 # 变量b保存了12
print(a + b) # 57
print(a - b) # 33
print(a * b) # 540
print(a / b) # 3.75
1.3 变量类型查询
在Python中可以使用type
函数对变量的类型进行检查。程序设计中函数的概念跟数学上函数的概念基本一致,数学上的函数相信大家并不陌生,它包括了函数名、自变量和因变量。
"""
使用type()检查变量的类型
Version: 0.1
Author: 骆昊
"""
a = 100
b = 12.345
c = 'hello, world'
d = True
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'str'>
print(type(d)) # <class 'bool'>
1.4 变量类型转换
不同类型的变量可以相互转换,这一点可以通过Python的内置函数来实现。
int()
:将一个数值或字符串转换成整数,可以指定进制。(该函数只截取浮点数整数部分)float()
:将一个字符串转换成浮点数。str()
:将指定的对象转换成字符串形式,可以指定编码。chr()
:将整数转换成该编码对应的字符串(一个字符)。ord()
:将字符串(一个字符)转换成对应的编码(整数)""" Python中的类型转换操作 Version: 0.1 Author: 骆昊 """ a = 100 b = 12.345 c = 'hello, world' d = True # 整数转成浮点数 print(float(a)) # 100.0 # 浮点型转成字符串 (输出字符串时不会看到引号哟) print(str(b)) # 12.345 # 字符串转成布尔型 (有内容的字符串都会变成True) print(bool(c)) # True # 布尔型转成整数 (True会转成1,False会转成0) print(int(d)) # 1 # 将整数变成对应的字符 (97刚好对应字符表中的字母a) print(chr(97)) # a # 将字符转成整数 (Python中字符和字符串表示法相同) print(ord('a')) # 97