1、什么是变量(变量记录事物变化的状态)
# 变量组成的结构为三部分(变量名、赋值符号、变量值)
key = value
1.1、变量名
当变量定义的时候,会在内存中申请一块空间专门用来存放变量值,而变量名,就是这个空间的门牌号,能方便的找到这块内存空间。
3.2、变量的命名和使用
- 变量名只能包含字母、数字和下划线。变量名可以字母或下划线开头,但不能以数字开头;
- 变量名不能包含空格,但可使用下划线来分割其中的单词;
- 不要将Python关键字和函数名用作变量名,即不要使用python保留用于特殊用途的单词;
- 变量名要简短和具有描述性,且用小写字母l和大写字母O,会可能看成数字1和0;
3.3、赋值符号
这个等号就是变量的赋值符号。它的意义是将右侧的变量值内存地址绑给左侧的变量名,当我们在使用变量名的时候就可以找到变量值了。
3.4、变量值
变量值就是事物的状态,定义了之后可以用变量名来访问。变量值有一个引用次数,一但这块空间被引用次数为0,就意味着我们没有途径能找到这块空间了,如果不进行清理,会导致内存被占用。
3.5、特性(变量一共有三个特性)
- id.就是变量值的内存空间地址,每一个值都有唯一一个id。内存地址不同,id就不相同。可以使用id()来查看变量的内存地址。
- type。不同类型的值记录事物的状态有所不同,这就是Python的数据类型。可以使用type()来查看。
- 变量值。就是存储值的本身。
3.6、is和==(两者都是用来比较的,但是又不相同。)
is:主要是用来判断两个值是不是属于同一个内存空间,即内存地址是否相同。
==:是判断值是否相等,而不管是否是一个内存空间。
4、变量的基础使用
# 变量的基础使用
url = "www.baidu.com"
print(url)
5、同时给多个变量赋值
#1、同时给不同的变量赋不同的值:变量1,变量2,变量3,…=数据1,数据2,数据3
web1,web2,web3 = "www.baidu.com","百度","一下"
print(web1,web2,web3)
#2、同时给不同的变量赋相同的值:变量1=变量2=变量3=…=数据
web_1 = web_2 = web_3 = "www.baidu.com百度一下您就知道"
print(web_1,web_2,web_3)
6、交换变量的值
# 交换两个变量的值
x,y = "www.baidu.com","百度一下,您就知道!"
print('x:{}y:{}'.format(y,x))
# 交换三个变量的值
url_1,url_2,url_3 = "www.baidu.com","百度一下,您就知道!","百度了我也不知道!"
url_1,url_2,url_3 = url_2,url_3,url_1
print(url_1,url_2,url_3)
方法的使用:
.format()方法:
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序。
(1)不设置位置参数:如果未指定位置参数就按照默认顺序
print('{}的性别是:{}'.format("meet","男"))
meet的性别是:男
(2)设置指定位置:设置指定位置后,会按照指定位置传入
print('{0}{1}'.format("hello ","world"))
print('{1}{0}'.format("hello ","world "))
print("{0}{1}{0}".format("hello ","world"))
hello world
world hello
hello worldhello
(3)通过序列传入:在序列名前加一个*,就可以传入
list_1 = ["zhengbin","Meet"]
print("{}{}".format(*list_1)) #按照默认位置传入
print("{0}{1}".format(*list_1)) #按照指定位置传入
print("{1}{0}".format(*list_1)) #按照指定位置传入
zhengbin Meet
zhengbin Meet
Meet zhengbin
(4)关键字参数直接传入
print('{name}的年龄是:{age}'.format(name="meet",age="22"))
meet的年龄是:22
(5)关键字参数通过字典传入:调用时在字典名前加两个*,就可以传入
kw = {
"name":"meet",
"age":"22"
}
print("{name}的年龄是:{age}".format(**kw))
meet的年龄是:22
(6)格式化数字
number = 99.993 #浮点数取位数
print('我的语文成绩是:{:.2f}分'.format(number))
number_2 = 63.23
print('我的数学成绩是:{:.2f}分'.format(number_2))
我的语文成绩是:99.99分
我的数学成绩是:63.23分