Python 变量详解[学习 Python 必备基础知识][看此一篇就够了]
您的“关注”和“点赞”,是信任,是认可,是支持,是动力......
如意见相佐,可留言。
本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新。
1 Python 变量概述
变量,英文叫做 Variable。
从形式上看,每个变量都拥有独一无二的名字,通过变量的名字就能找到变量中的数据。
从底层看,变量是内存的名字。因为程序中的数据最终都要放到内存中。
2 Python 变量的命名
变量名是标识符的一种,不能随便起,必须要遵守 Python 标识符命名规则(详情请参见Python 标识符)。
在遵守 Python 标识符命名规则的前提下,还是有一定规则可循的,当然,对于以下所述,绝无强制与绝对,总之都是为了提高代码的可读性。可根据具体情况、或各自喜好、或根据各自公司要求等酌情对待。如下所述:
- (建议)变量名需要由多个字母(或单词)组成,每个单词全部使用小写字母,字母(或单词)之间使用 下划线
_连接。
例如:first_name、second_name、book_name等等。 - (不建议)“小驼峰命名法”:变量名需要由多个字母(或单词)组成,第一个字母(或单词)以小写字母开始,后续字母(或单词)的首字母大写。例如:firstName、secondName、bookName等等。
- (不建议)“大驼峰命名法”:每一个字母(或单词)的首字母都采用大写字母。例如:FirstName、SecondName、BookName等等。
3 Python 变量赋值
3.1 Python 变量赋值概述
赋值,英文叫做 Assignment。
Python 变量的赋值指的是将数据放入变量的过程。
Python 变量无须声明数据类型就可以直接赋值,对一个不存在的变量赋值就相当于创建(定义)了一个新变量,换句话说 Pyhton 创建变量就必须赋值。
Python 变量的数据类型可以随时改变,比如,同一个变量可以一会儿被赋值为字符串,一会儿被赋值为整数。
3.2 Python 变量的基本赋值格式
Python 使用等号=作为赋值运算符,具体格式为:
assignmentname = value
对以上格式的说明:
- assignmentname 表示变量名。
- value 表示值,指的是要存储的数据。
- 为了维持代码的格式, 通常会在运算符(这里指赋值运算符
=)两边各加一个空格。
实例如下所示:
例一,
num = 100 # 将数字中的整数 100 赋值给变量 num
赋值操作之后,num 就代表整数 100,使用 num 也就是使用 100。如下代码所示:
num = 100
print(100)
print(num)
运行结果:
100
100
例二,
更多赋值的例子:
info_myself1 = '微信公众号:码农阿杰' # 将字符串赋值给变量 info_myself1
info_url = "https://www.cnblogs.com/manongajie/" # 将博客园地址赋值给变量 info_url
b = True # 将布尔值 True 赋值给变量 b
例三,
除了赋值单个数据,也可以将表达式的运行结果赋值给变量,如下所示:
sum = 100 + 100 # 将 100 加 100 的和赋值给变量 sum
result = 100 / 2 # 将 100 除以 2 的商赋值给变量 result
例四,
变量的值不是一成不变的,它可以随时被修改,只要重新赋值即可;另外也不用关心变量的数据类型,可以将不同类型的数据赋值给同一个变量。如下代码所示:
info_myself = '微信公众号:码农阿杰' # 将字符串'微信公众号:码农阿杰'赋值给变量 info_myself
print(info_myself)
info_myself = '博客园地址 https://www.cnblogs.com/manongajie/' # 将字符串'博客园地址 https://www.cnblogs.com/manongajie/' 再次赋值给变量 info_myself
print(info_myself)
info_myself = 100 # 将整数 100 再次赋值给变量 info_myself
print(info_myself)
运行结果:
微信公众号:码农阿杰
博客园地址 https://www.cnblogs.com/manongajie/
100
对例四中的代码以及运行结果做一总结:
可以看出,变量的值一旦被修改,之前的值就被覆盖了,不复存在了,再也找不回了,同一变量多次赋值,最终结果取决于最后一次赋的值。这是因为变量只能容纳一个值。
3.3 Python 变量的其他赋值格式
3.3.1 同时给多个变量赋同一个值
代码格式如下所示:
assignmentname1 = assignmentname2 ... = assignmentnamen = value
实例如下所示:
number1 = number2 = number3 = number4 = 100
print(number1)
print(number2)
print(number3)
print(number4)
运行结果:
100
100
100
100
3.3.2 同时给多个变量赋不同的值
代码格式如下所示:
assignmentname1, assignmentname2, ..., assignmentnamen = value1, value2, ..., valuen
实例如下所示:
number1, number2, number3 = 1, 2, 3
print(number1)
print(number2)
print(number3)
运行结果:
1
2
3
4 Python 变量的使用
4.1 Python 变量的使用场景
对于 Python 变量使用,我们只要知道变量的名字即可。
在 Python 中,变量的使用场景非常广泛, 这里就不进行代码举例了,在后面的学习中会经常用到,敬请期待吧。
4.2 Python 获取变量的值
我们可以通过变量名直接获取。实例如下所示:
number1 = 100
number2 = '微信公众号:码农阿杰'
print('number1 = ', number1)
print('number2 = ', number2)
运行结果:
number1 = 100
number2 = 微信公众号:码农阿杰
4.3 Python 变量值的交换
代码格式如下所示:
assignment1, assignment2 = assignment2, assignment1
实例如下代码所示:
number1 = 100
number2 = 1
number1, number2 = number2, number1
print('number1 = ', number1)
print('number2 = ', number2)
运行结果:
number1 = 1
number2 = 100
4.4 常用函数
目前列举如下两个函数,如果需要,后面再做补充。
4.4.1 查看变量的数据类型
查看变量的数据类型,用 Python 的内置函数 type()。
type() 函数返回的是对象的类型。
实例如下所示:
info_myself = '微信公众号:码农阿杰'
info_num = 100
b = True
print(type(info_myself))
print(type(info_num))
print(type(b))
运行结果:
<class 'str'>
<class 'int'>
<class 'bool'>
4.4.2 获取变量在内存中的 id 标识
获取变量在内存中的唯一标识,用 Python 的内置函数 id()。
id() 函数返回的是对象的唯一标识,是一个整数。
实例如下所示:
a = b = 100
print(id(a))
print(id(b))
c = '微信公众号:码农阿杰'
print(id(c))
c = 2
print(id(c))
运行结果:
140735595275008
140735595275008
2129873349104
140735595271872
从以上代码可以看出,变量被重新赋值之后,内存地址将会发生变化。
5 文章其他地址
5.1 微信公众号:码农阿杰
5.2 CSDN 博客
6 参考资料
6.1 Python 3.8.2 documentation
Python 变量详解[学习 Python 必备基础知识][看此一篇就够了]的更多相关文章
- Python变量详解
Python变量详解 目录 Python变量详解 一.变量的定义 二.变量组成的三部分 2.1 变量名 2.1.1 变量名的命名规范 2.1.2 变量名的命名风格 2.2 赋值符号 2.3 变量值 三 ...
- HTTPS加密协议详解(一):HTTPS基础知识
转自:https://blog.csdn.net/hherima/article/details/52469267------------------------------专栏导航:-------- ...
- HTTPS协议详解(一):HTTPS基础知识
HTTPS基础知识:HTTPS (Secure Hypertext Transfer Protocol)安全超文本传输协议,是一个安全通信通道,它基于HTTP开发用于在客户计算机和服务器之间交换信息. ...
- 学习 Spring Boot 知识看这一篇就够了
从2016年因为工作原因开始研究 Spring Boot ,先后写了很多关于 Spring Boot 的文章,发表在技术社区.我的博客和我的公号内.粗略的统计了一下总共的文章加起来大概有六十多篇了,其 ...
- Python—变量详解
变量赋值 a = 1 b = 2 c = 3 print a, b, c # 1 2 3 a = b = c = 1 print a, b, c # 1 1 1 a, b, c = 1, 2, 3 p ...
- 学习pandas apply方法,看这一篇就够了,你该这么学,No.10
最近好忙啊,好忙啊,忙的写不动博客了 时间过得飞快 一晃,一周就过去了 本着不进步就倒退的性格 我成功的在技术上面划水了一周 今天要学习的还是groupby的高级进阶 说是高级,其实就是比初级复杂了一 ...
- python多线程详解
目录 python多线程详解 一.线程介绍 什么是线程 为什么要使用多线程 二.线程实现 threading模块 自定义线程 守护线程 主线程等待子线程结束 多线程共享全局变量 互斥锁 递归锁 信号量 ...
- 第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样?
第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样? 一. 案例说明 我们上节提到了,使用property函数定义的属性不要与类内已经定义的普通实例变量重 ...
- 机器学习经典算法详解及Python实现--基于SMO的SVM分类器
原文:http://blog.csdn.net/suipingsp/article/details/41645779 支持向量机基本上是最好的有监督学习算法,因其英文名为support vector ...
随机推荐
- 常用正则表达式(手机号、邮箱、URL地址、身份证等等)
一.前言 不好的习惯:1.每一次用到正则都是上网copy一份,也没有去学习思考,看看都是什么意思: 2.一个项目里不同的地方用到了相同的校验,一直在重复的copy代码,并没有统一起来,万一哪天要修改规 ...
- Windows下利用Chrome调试IOS设备页面
本文介绍如何在 Windows 系统中连接 iOS设备 并对 Web 页面进行真机调试 必须前提 iOS设备.数据线 Node.js 环境 Chrome 浏览器 环境准备 安装Node环境 参考Nod ...
- hdu1026Ignatius and the Princess ,又要逃离迷宫了
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1026/ 题意就是一个迷宫,然后有些位置上有守卫,守卫有一个血量,要多花费血量的时间击败他,要求从(0,0)到(n ...
- Consul+Nginx部署高可用
1. Consul Server 创建consul server虚拟主机 docker-machine create consul 出现如下内容即创建成功 Running pre-create che ...
- 理解MapReduce计算构架
用Python编写WordCount程序任务 程序 WordCount 输入 一个包含大量单词的文本文件 输出 文件中每个单词及其出现次数(频数),并按照单词字母顺序排序,每个单词和其频数占一行,单词 ...
- python学习第四节 迭代器 生成器
1:什么是迭代 可以直接作用于for循环的对象统称为可迭代对象(Iterable). 可以被next()函数调用并不断返回下一个值的对象称为迭代器(Iterator). 所有的Iterable均可以通 ...
- EF 太重,MyBatis 太轻,ORM 框架到底怎么选 ?
以 EF 为代表的基于 Linq 的 ORM 框架总是 很重. 他们的功能早已超出了一个 ORM 的范畴, ORM 是 Object Relational Mapping ,从名字上看,其初衷是将 数 ...
- JDBC获取连接抛出java.sql.SQLException: The server time zone...
今天尝试数据库,代码确实没问题就是给了给这个东西 java.sql.SQLException: The server time zone value '�й���ʱ��' is unrecogniz ...
- 3-1. 基于epoll架构的视频采集端设计
精通epoll架构 epoll:Linux中最优秀的多路复用机制! 与select .poll区别 1.select和poll没有太大区别,除了select有文件描述符限制(1024个).select ...
- PTA数据结构与算法题目集(中文) 7-33
PTA数据结构与算法题目集(中文) 7-33 7-33 地下迷宫探索 (30 分) 地道战是在抗日战争时期,在华北平原上抗日军民利用地道打击日本侵略者的作战方式.地道网是房连房.街连街.村连村的 ...