程序就是用来处理数据的,而变量就是用来存储数据的
01.变量的定义
• 在python中,每个变量在使用前都必须赋值,变量赋值以后 该变量才会被创建
• 等号(=) 用来给变量赋值
= 左边是变量名
= 右边是存储在变量中的值
变量名 = 值
qq_num = 12345678
变量定义之后,后续就可以直接使用了
1)变量的演练1——ipython
1 # 定义 qq_number 的变量用来保存 qq 号码 2 In [1]: qq_number = "12345678" 3 4 # 输出 qq_number 中保存的内容 5 In [2]: qq_number 6 Out[2]: '12345678' 7 8 9 # 定义 qq_passwd 的变量用来保存qq密码 10 In [3]: qq_passwd = "asd123" 11 12 # 输出 qq_passed 中保存的内容 13 In [4]: qq_passwd 14 Out[4]: 'asd123'
使用交互式方式,如果要查看变量内容,直接输入变量名即可,不需要使用print函数
2)变量演练2——pycharm
1 # 1. 定义一个变量记录 qq 号码 2 qq_num = "576844432" 3 4 # 2. 定义一个变量记录 qq 密码 5 qq_passwd = "asdqwe123" 6 7 8 # 如果希望通过解释器的方式,输出变量的内容,需要使用print函数 9 print(qq_num) 10 print(qq_passwd)
3)变量演练2——超市买苹果
• 可以用其他变量的计算结果来定义变量
• 变量定义之后,后续就可以直接使用了
需求:
• 苹果的价格是 8.5/斤
• 买了7.5斤苹果
• 计算付款金额
1 # 1. 定义苹果的单价 2 price = 8.5 3 4 # 2. 定义购买苹果的重量 5 weight = 7.5 6 7 8 # 3. 计算苹果的付款金额 9 money = weight * price 10 print(money)
购买苹果扩展:
• 如果只要购买苹果,就返5元钱
• 请重新计算付款金额
1 # 1. 定义苹果的单价 2 price = 8.5 3 4 # 2. 定义购买苹果的重量 5 weight = 7.5 6 7 8 # 3. 计算苹果的付款金额 9 money = weight * price 10 11 12 # 4. 只要买苹果就返5元 13 money -= 5 # (money -= 5 相当于 money = money - 5) 14 print(money)
提问:
• 上述代码中,一共定义有几个变量
三个:price、weight、money
• money -=5 是在定义新的变量还是在使用变量?
直接使用之前已经定义的变量
变量名只有在第一次出现的时候才是定义变量
变量名再次出现,不是定义变量,而是在直接使用之前定义过的变量
• 在程序开发中,可以修改之前定义变量中保存的值吗?
可以
变量中存储的值,就是可以变得
02. 变量的类型
• 在内存中创建一个变量,会包括:
① 变量的名称
② 变量保存的数据
③ 变量存储数据的类型
④ 变量的地址(标识)
2.1 变量类型的演练——个人信息
需求:
• 定义变量保存小明的个人信息
• 姓名:小明
• 年龄:18岁
• 姓名:是男生
• 身高:1.75米
• 体重:75.0公斤
利用pycharm中的单步调试确认变量中保存的数据类型
1 # str 表示是一个字符串类型 2 name = '小明' 3 4 # int 表示是一个整数类型 5 age = 18 6 7 # bool表示是一个布尔类型,真True 或者 假False 8 gender = True 9 10 # float 表示一个小数类型,浮点数 11 height = 1.75 12 weight = 75.0 13 14 print(name)
提问
1. 在演练中,一共有几种数据类型?
• 4种
• str——字符串
• bool——布尔型(真或假)
• int——整数
• float——浮点数(小数)
2. 在python中定义变量时需要指定类型吗?
• 不需要
• Python 可以根据=等号右侧的值,自动推导出变量中存储数据的类型
2.2 变量的类型
• 在Python中定义变量是不需要指定类型的
• 数据类型可以分为 数字型 和 非数字型
• 数字型:
① 整型(int)
② 浮点型(float)
③ 布尔型(bool)
·真True 非 0 数——非零即真
·假False 0
④ 复数型(complex)
·主要用于科学计算,例如:平面场问题、波动问题、电感电容等问题
• 非数字型
① 字符串
② 列表
③ 元组
④ 字典
提示:在python 2.x中,整数根据保存数值的长度还分为:
• int(整数)
• long(长整型)
• 使用 type 函数可以查看一个变量的类型
1 In [2]: name = "小明" 2 3 In [3]: type(name) 4 Out[3]: str 5 6 In [4]: age = 18 7 8 In [5]: type(age) 9 Out[5]: int 10 11 In [6]: gender = True 12 13 In [7]: type(gender) 14 Out[7]: bool 15 16 In [8]: height = 1.75 17 18 In [9]: type(height) 19 Out[9]: float
2.3 不同类型变量之间的计算
1)数字型变量之间可以直接计算
• 在python中,两个数字型变量是可以直接进行算数运算的
• 如果变量是 bool型,在计算时:
True 对应的数字是1
False 对应的数字是0
演练步骤
①. 定义整数 i = 10
②. 定义浮点数 f = 10.5
③. 定义布尔型 b = True
• 在ipython中,使用上述变量相互进行算术运算
1 In [3]: i = 10 2 3 In [4]: f = 10.5 4 5 In [5]: b = True 6 7 In [6]: i + f 8 Out[6]: 20.5 9 10 In [7]: i + b 11 Out[7]: 11 12 13 In [8]: i - b 14 Out[8]: 9 15 16 In [9]: f + b 17 Out[9]: 11.5 18 19 In [10]: i * f 20 Out[10]: 105.0
2)字符串变量之间使用 + 拼接生成新的字符串
1 In [11]: first_name = "三" 2 3 In [12]: last_name = "张" 4 5 In [13]: first_name + last_name 6 Out[13]: '三张'
3)字符串变量可以和 整数 使用 * 重复拼接相同的字符串
1 In [14]: "-" * 20 2 Out[14]: '--------------------'
4)数字型变量 和 字符串之间不能进行其他计算
1 In [16]: first_name = "zhang" 2 3 In [17]: x = 10 4 5 In [18]: first_name + x 6 --------------------------------------------------------------------------- 7 TypeError Traceback (most recent call last) 8 <ipython-input-18-94a82eec16c5> in <module>() 9 ----> 1 first_name + x 10 11 TypeError: must be str, not int
2.4 变量的输入
• 所谓 输入,就是用代码获取用户通过键盘输入的信息
• 例如:去银行取钱,在ATM上输入密码
• 在python中,如果要获取用户在键盘上的输入信息,需要使用input函数
1)关于函数
• 一个提前准备好的功能(别人或者自己写的代码),可以直接使用,而不用关心内部的细节
• 目前已经学习过的函数
函数 | 说明 |
print(x) | 将x输出到控制台 |
type(x) | 查看x的变量类型 |
2)input 函数实现键盘输入
• 在python中可以使用input函数从键盘等待用户的输入
• 用户输入的任何内容 python 都认为是一个字符串
语法如下:
1 字符串变量 = input("提示信息:")
3)类型转换函数
函数 | 说明 |
int(x) | 将x转换为一个整数 |
float(x) | 将x转换为一个浮点数 |
4)变量输入演练——超市买苹果增强版
需求:
• 收银员输入苹果的价格,单位:元/斤
• 收银员输入用户购买苹果的重量,单位:斤
• 计算并且输出付款金额
1 # 1. 输入苹果单价 2 # 这里input函数接收的数据类型为字符串str,使用float函数转换为浮点型方便后面计算 3 price = float(input("苹果的单价:")) 4 5 # 2. 输入苹果的重量 6 # 这里input函数接收的数据类型为字符串str,使用float函数转换为浮点型方便后面计算 7 weight = float(input("苹果的重量:")) 8 9 10 # 3. 计算支付的总金额 11 money = price * weight 12 print(money)
2.5 变量的格式化输出
苹果的单价9.00元/斤,购买了5.00斤,需要支付45.00元
• 在python中可以使用print函数将信息输出到控制台
• 如果希望输出文字信息的同时,一起输出数据,就需要使用到格式化操作符
• % 被称为格式化操作符,专门用于处理字符串中的格式
包含% 的字符串,被称为格式化字符串
% 和不同的字符连用,不同类型的数据需要使用不同的格式化字符
格式化字符 | 含义 |
%s | 字符串 |
%d | 有符号十进制整数,%06d表示输出的整数显示位数,不足的地方使用0补全 |
%f | 浮点数,%.2f表示小数点后只显示两位 |
%% | 输出% |
语法格式如下:
1 print("格式化字符串" % 变量1) 2 print("格式化字符串" %(变量1,变量2,...))
格式化输出演练——基本练习
需求:
1. 定义字符串变量name,输出我的名字叫小明,请多多关照!
2.定义整数变量student_nu, 输出我的学号是000001
3.定义小数price、weight、money,输出苹果的单价9.00/斤,购买了5.00斤,需要支付45.00元
4.定义一个小数scale,输出数据比例是10.00%
1 name = '小明' 2 student_nu = 1 3 price = 9 4 weight = 5 5 money = price * weight 6 scale = 0.1 7 8 print('我的名字叫小明%s' % name) 9 print('我的学号是%06d' % student_nu) 10 print("苹果的单价%.2f/斤,购买了%.2f斤,需要支付%.2f元" %(price,weight,money)) 11 print('数据比例是%.2f%%' % (scale*100))