目录
1.常量和表达式
我们可以把Python当成一个计算器,来进行一些算式运算,如
print(1 + 2 - 1)
print(1 + 2 * 2)
print(1 + 2 / 2)
注:在上述代码中,
可以使用 + - * / ( ) 等运算符进行算术运算. 先算乘除, 后算加减
运算符和数字之间, 可以没有空格, 也可以有多个空格. 但是一般习惯上写一个空格(比较美观)
形如 1 + 2 - 3 这样是算式, 在编程语言中称为 表达式, 算式的运算结果, 称为 表达式的返回值
其中 1 , 2 , 3 这种称为 字面值常量, + - * / 这种称为 运算符 或者 操作符
2. 变量和类型
2.1 变量是什么
有的时候
,
我们需要进行的计算可能更复杂一些
,
需要把一些计算的中间结果保存起来
.
这个时候就需要用到 变量
例如:
给定四个数,
30.2 + 12.3 + 23.4 + 9.3, 编写代码, 求这四个数的方差.
ps: 方差的计算过程: 取每一项, 减去平均值, 计算平方, 再求和, 最后除以 (项数 - 1)
在这个代码中, 就需要先计算这四个数字的平均值, 然后再计算方差. 这就需要把计算的平均值使用 变量保存起来
avg = (30.2 + 12.3 + 23.4 + 9.3) / 4
total = (30.2 - avg) ** 2 + (12.3 - avg) ** 2 + (23.4 - avg) ** 2 + (9.3 - avg) ** 2
result = total / 3
print(result)
注:
avg, total, result 均为变量.
** 在 Python 中表示乘方运算. ** 2 即为求平方
2.2 变量的语法
1)定义变量
a = 10
创建变量的语句非常简单
,
其中
a
为变量名。
当我们创建很多个变量的时候
,
就可以用名字来进行区分。
=
为赋值运算符
,
表示把
=
右侧的数据放到
=
左侧的空间中
注意:
变量的名字要遵守一定规则
。
变量名有数字字母下划线构成数字不能开头变量名不能和“关键字”重复变量名大小写敏感。num 和 Num 是两个不同的变量名
软性规则(建议遵守)
变量名使用有描述性的单词来表示 , 尽量表达出变量的作用。一个变量名可以由多个单词构成 , 长一点没关系 , 但是含义要清晰当变量名包含多个单词的时候 , 建议使用 " 驼峰命名法 ". 形如 totalCount , personInfo 这种 , 除了首个单词外 , 剩余单词首字母大写
2)使用变量
a = 10
print(a)
修改变量的值
# 定义变量
a = 10
# 修改变量值
a = 20
print(a)
注意: 在 Python 中, 修改变量也是使用 = 运算, 看起来和定义变量没有明显区别。
对于同一个变量,刚开始就是定义变量,后面的都是修改变量
用一个变量的值赋给另外一个变量
a = 10
b = 20
# 将 b = 的值赋予 a
a = b
print(a)
print(b)
2.3 变量的类型
变量里面存储的不仅仅是数字
,
还可以存储其它种类的数据
.
为了区分不同种类的数据
,
我们引入了
"
类型" 这样的概念。Python
变量的类型不需要显式指定
,
而是在赋值的时候确定的
1)整数
a = 10
print(type(a))
PS: type 和 print 类似, 也是 python 内置的函数。可以使用 type 来查看一个变量的类型。
Python
的
int
类型变量
,
表示的数据范围是没有上限的
.
只要内存足够大,
理论上就可以表示无限大小的数据。
2)浮点数(小数)
a = 0.1
print(type(a))
Python 的小数只有 float 一种类型, 没有 double 类型. 但是实际上 Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数
3)字符串
a = 'hello'
print(type(a))
使用 ' ' 或者 " " 引起来的, 称为 字符串. 可以用来表示文本。
注意
:
在
Python
中
,
单引号构成的字符串和双引号构成的字符串
,
没有区别。
'hello'
和
"hello"
是
完全等价的。
可以使用 len 函数来获取字符串的长度
a = 'hello'
print(len(a))
对于两个字符串,可以使用 + 进行拼接
a = 'hello'
b = 'world'
print(a + b)
4)布尔
布尔类型是一个特殊的类型
,
取值只有两种
, True (
真
)
和
False (
假
)。通常用于逻辑判断
a = True
b = False
print(type(a))
print(type(b))
(5) 其他
除了上述类型之外, Python 中还有 list, tuple, dict, 自定义类型 等等
2.4 动态类型特性
在
Python
中
,
一个变量是什么类型
,
是可以在
"
程序运行
"
过程中发生变化的
.
这个特性称为
"
动态类型
" 。
a = 10
print(type(a))
b = 'hello'
print(type(b))
在程序执行过程中, a 的类型刚开始是 int, 后面变成了 str。
动态类型特性是一把双刃剑
.
对于中小型程序
,
可以大大的解约代码量
(
比如写一段代码就可以同时支持多种类型
)。
对于大型程序
,
则提高了模块之间的交互成本。
(
程序猿
A
提供的代码难以被
B
理解
)。