首页 > 技术文章 > 变量的基本使用

ljwpython 2020-11-19 17:41 原文

程序就是用来处理数据的,而变量就是用来存储数据的

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))

 

推荐阅读