文章目录
一、变量的概念
变量名只有在第一次出现的时候,才是定义变量。当再次出现时,不是定义变量,而是直接使用之前定义的变量。
二、变量类型
变量存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。在内存中创建一个变量,会包括:
- 变量的名称
- 变量保存的数据
- 变量存储数据的类型
- 变量的地址(标示)
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
在 Python
中定义变量是 不需要指定类型(在其他很多高级语言中都需要)
数据类型可以分为 数字型 和 非数字型
1、数字型
- 整型 (
int
)- 浮点型(
float
)- 布尔型(
bool
)
- 真
True
非 0 数
—— 非零即真- 假
False
0
- 复数型 (
complex
)
- 主要用于科学计算,例如:平面场问题、波动问题、电感电容等问题
2、非数字型
- 字符串
- 列表
- 元组
- 字典
3、扩展知识
在 Python 2.x 中,整数 根据保存数值的长度还分为:
int
(整数)long
(长整数)
- 使用
type
函数可以查看一个变量的类型
In [1]: type(name)
三、变量赋值
Python 中的变量赋值不需要类型声明。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
-
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
-
等号 = 用来给变量赋值。
-
等号 = 运算符左边是一个变量名,等号 = 运算符右边是存储在变量中的值。
1、实例一
#!/usr/bin/python
# -*- coding: UTF-8 -*-
counter = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串
print counter
print miles
print name
2、实例二
# 定义苹果价格变量
price = 8.5
# 定义购买重量
weight = 7.5
# 计算金额
money = price * weight
# 只要买苹果就返 5 元
money = money - 5
print(money)
money = money - 5
是在定义新的变量还是在使用变量?
- 直接使用之前已经定义的变量
- 变量名 只有在 第一次出现 才是 定义变量
- 变量名 再次出现,不是定义变量,而是直接使用之前定义过的变量
四、不同类型变量之间的计算
1、数字型变量之间的计算
- 在Python中,数字型变量之间是可以直接计算的。
- 布尔类型(bool)变量在计算时True的值为1,False的值为0。
2、字符串变量之间的计算
在Python中,字符串变量之间可以用+
进行拼接,生成新的字符串。
In [1]: first_name = "三"
In [2]: last_name = "张"
In [3]: first_name + last_name
Out[3]: '三张'
3、字符串变量 和 整数 的结合使用
在Python中,字符串变量和整型变量之间可以用*进行计算,表示重复拼接相同的字符串。除此之外,数字型变量和字符串之间不能进行其他计算。
In [1]: "-" * 5
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`
五、变量的输入
1、概念
- 所谓输入,就是用代码获取用户通过键盘输入的信息。
- 在Python中,想要获取用户在键盘上输入的信息,需要用到input函数。
- 用户输入的任何内容Python都认为是一个字符串。
字符串变量 = input("提示信息:")
2、实例
(1)演练方式 —— 买苹果
需求
- 收银员输入 苹果的价格,单位:元/斤
- 收银员输入 用户购买苹果的重量,单位:斤
- 计算并且 输出 付款金额
# 1. 输入苹果单价
price_str = input("请输入苹果价格:")
# 2. 要求苹果重量
weight_str = input("请输入苹果重量:")
# 3. 计算金额
# 1> 将苹果单价转换成小数
price = float(price_str)
# 2> 将苹果重量转换成小数
weight = float(weight_str)
# 3> 计算付款金额
money = price * weight
print(money)
(2) 演练方式 —— 买苹果改进版
思考 —— 如果开发中,需要用户通过控制台 输入 很多个 数字,针对每一个数字都要定义两个变量,方便吗?
优化方案:
- 定义 一个 浮点变量 接收用户输入的同时,就使用
float
函数进行转换
price = float(input("请输入价格:"))
改进后的好处:
- 节约空间,只需要为一个变量分配空间
- 起名字方便,不需要为中间变量起名字
改进后的“缺点”:
- 初学者需要知道,两个函数能够嵌套使用,稍微有一些难度
六、类型转换函数
函数 | 功能 |
---|---|
int(x) | 将x转换为一个整型 |
float(x) | 将x转换为一个浮点型 |
七、变量的格式化输出
在Python中使用print函数可以将信息输出到控制台。希望输出信息的同时输出数据,就要用到格式化操作符%。
格式化字符串,即包含%的字符串。
1、种类
格式化字符 | 含义 |
---|---|
%s | 字符串 |
%d | 有符号十进制整数。%06d表示输出的整数显示位数,不足用0补全 |
%f | 浮点数。%.02f表示小数点后只显示两位 |
%% | 输出% |
%x / %X | 转成无符号十六进制数(x / X 代表转换后的十六进制字符的大小写) |
2、语法
print("格式化字符串" % 变量1)
print("格式化字符串" % (变量1, 变量2...))
3、例子
print("姓名:%s" %name)
作者:咸蛋黄派