变量:
- 定义:用来存储值的量
- 表达形式:变量名 = 值
- = 左边是一个变量名
- = 右边是存储在变量中的值
标识符和关键字
标识符
- 定义:标示符就是程序员定义的 变量名、函数名
- 命名要求:
- 标示符可以由 字母、下划线 和 数字 组成
- 不能以数字开头
- 不能与关键字重名
关键字
- 定义:关键字 就是在 Python 内部已经使用的标识符
- 查看关键字的方法:
In [1]: import keyword
In [2]: print(keyword.kwlist)
变量命名规则
- 情况:如果 变量名 需要由 二个 或 多个单词 组成时
-
第一种命名方式:每个单词都使用小写字母,单词与单词之间使用 _下划线 连接
例如:first_name、last_name、qq_number、qq_password
-
第二种命名方式:驼峰命名法:
-
小驼峰式命名法:第一个单词以小写字母开始,后续单词的首字母大写
例如:firstName、lastName
-
大驼峰式命名法:每一个单词的首字母都采用大写字母
例如:FirstName、LastName、CamelCase
-
-
练习:
- 练习一:使用 Shell 运行代码:
# 定义 qq_number 的变量用来保存 qq 号码
In [1]: qq_number = "1111111111"
# 输出 qq_number 中保存的内容
In [2]: qq_number
Out[2]: '1111111111'
# 定义 qq_password 的变量用来保存 qq 密码
In [3]: qq_password = "123456"
# 输出 qq_password 中保存的内容
In [4]: qq_password
Out[4]: '123456'
- 练习二:使用文本形式运行代码
- 创建 文本 QQDemo.py
$ vim QQDemo.py
- 在 VIM 界面中输入以下代码:
# 定义 qq 号码变量 qq_number = "1234567" # 定义 qq 密码变量 qq_password = "123" # 在程序中,如果要输出变量的内容,需要使用 print 函数 print(qq_number) print(qq_password)
- 练习三:实现购物:
- 需求:
苹果的价格是 3.5 元 / 斤,梨子 4.5 元 / 斤
买了 7.5 斤 苹果,5.5 斤梨子
计算付款金额# 定义苹果价格变量 apples_price = 3.5 pears_price = 4.5 # 定义购买重量 apples_weight = 7.5 pears_weight = 5.5 # 计算金额 money = apples_price * apples_weight + pears_price * pears_weight print(money)
变量的类型:
-
两大类型
-
数字型
- 整型 (int)
- 浮点型(float)
- 布尔型(bool)
- 真 True 【不是 0 就是 真】
- 假 False 0
- 复数型 (complex)
- 主要用于科学计算,例如:平面场问题、波动问题、电感电容等问题
-
非数字型
- 字符串 (str)
- 列表 (lsit)
- 元组 (tuple)
- 字典 (Dictionary)
-
查看数据类型:
In [1]: type(name)
不同类型变量之间的计算:
-
数值型变量 之间的计算
- bool 对应值:
- True 对应的数字是 1
- False 对应的数字是 0
- 练习:
- 定义整数 i = 10
In [1]: i = 10 In [2]: i Out[2]: 10
- 定义浮点数 f = 10.5
In [1]: f = 10.5 In [2]: f Out[2]: 10.5
- 定义布尔型 b = True
In [1]: b = True In [2]: b Out[2]: True
- bool 对应值:
字符串变量 之间使用
+
拼接字符串
In [1]: first_name = "三"
In [2]: last_name = "张"
In [3]: first_name + last_name
Out[3]: '三张'
- 字符串变量可以使用
*
和数字
进行拼接操作
In [1]: "-" * 50
Out[1]: '--------------------------------------------------'
- 数字型变量 和 字符串 之间 不能进行其他计算
In [1]: first_name = "zhang"
In [2]: x = 10
In [3]: x + first_name
---------------------------------------------------------------------------
TypeError: unsupported operand type(s) for +: 'int' and 'str'
类型错误:`+` 不支持的操作类型:`int` 和 `str`
变量的格式化输出:
格式化字符 | 含义 |
---|---|
%s | 字符串 |
%d | 有符号十进制整数,%06d 表示输出的整数显示位数,不足的地方使用 0 补全 |
%f | 浮点数,%.2f 表示小数点后只显示两位 |
%% | 输出 % |
- 实例:
print("格式化字符串" % 变量1)
print("格式化字符串" % (变量1, 变量2...))
- 练习:
- 需求:
- 定义字符串变量 name,输出 我的名字叫 小明,请多多关照!
- 定义整数变量 student_no,输出 我的学号是 000001
- 定义小数 price、weight、money,输出 苹果单价 9.00 元/斤,购买了 5.00 斤,需要支付 45.00 元
- 定义一个小数 scale,输出 数据比例是 10.00%
- 代码:
name = "小明" student_no = 1 price = 9.00 weight = 5.00 money = price * weight scale = 0.1 print("我的名字叫 %s,请多多关照!" % name) print("我的学号是 %06d" % student_no) print("苹果单价 %.02f 元/斤,购买 %.02f 斤,需要支付 %.02f 元" % (price, weight, money)) print("数据比例是 %.02f%%" % (scale * 100))
- 需求:
全局变量与局部变量
-
全局变量:
- 定义:在 函数外部定义 的变量,所有函数内部都可以使用这个变量
- 作用:“永久” 保存数据
-
局部变量:
- 作用:在 函数内部定义 的变量,只能在函数内部使用
- 作用:临时 保存 函数内部需要使用的数据
说明:局部变量不会改变全局变量的值