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

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_number6 Out[2]: '12345678'
7
8
9 #定义 qq_passwd 的变量用来保存qq密码
10 In [3]: qq_passwd = "asd123"
11
12 #输出 qq_passed 中保存的内容
13 In [4]: qq_passwd14 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 *price10 print(money)

购买苹果扩展:

• 如果只要购买苹果,就返5元钱

• 请重新计算付款金额

1 #1. 定义苹果的单价
2 price = 8.5
3
4 #2. 定义购买苹果的重量
5 weight = 7.5
6
7
8 #3. 计算苹果的付款金额
9 money = weight *price10
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 =True9
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]: str5
6 In [4]: age = 18
7
8 In [5]: type(age)9 Out[5]: int10
11 In [6]: gender =True12
13 In [7]: type(gender)14 Out[7]: bool15
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 =True6
7 In [6]: i +f8 Out[6]: 20.5
9
10 In [7]: i +b11 Out[7]: 11
12
13 In [8]: i -b14 Out[8]: 9
15
16 In [9]: f +b17 Out[9]: 11.5
18
19 In [10]: i *f20 Out[10]: 105.0

2)字符串变量之间使用 + 拼接生成新的字符串

1 In [11]: first_name = "三"
2
3 In [12]: last_name = "张"
4
5 In [13]: first_name +last_name6 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 +x6 ---------------------------------------------------------------------------
7 TypeError Traceback (most recent call last)8 in ()9 ----> 1 first_name +x10
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 *weight12 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 *weight6 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))