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 ...
随机推荐
- Webpack抽离第三方类库以及common解决方案
前端构建场景有两种,一种是单页面构建,另一种是多入口构建多页面应用程序(我视野比较小,目前就知道这两种),下面我们针对这两种场景总结了几种抽离第三方类库以及公共文件的解决方案. 如果有哪些地方优化不周 ...
- ThreadPoolTaskExecutor 中 corePoolSize vs. maxPoolSize
1. 概览 Spring中的 ThreadPoolTaskExecutor 是一个 JavaBean ,提供围绕java.util.concurrent.ThreadPoolExecutor 的抽象实 ...
- 《JavaScript 模式》读书笔记(5)— 对象创建模式1
这又是一个新的开始,对象的重要性不言而喻.在JavaScript中创建对象是十分容易的,之前聊过的对象字面量和构造函数都可以达到目的.但是本篇中,我们越过那些方法,以寻求一些额外的对象创建模式. 本篇 ...
- [LeetCode] 937. Reorder Data in Log Files 日志文件的重新排序
You have an array of `logs`. Each log is a space delimited string of words. For each log, the first ...
- coding++:error Could not read JSON: Unexpected token (START_OBJECT), expected START_ARRAY: need JSON Array to contain As.WRAPPER_ARRAY type information for class java.lang.Object
Spring源码中是使用容器中的ObjectMapper对象进行序列化和反序列化. 当我们将自定义的ObjectMapper对象放入IOC容器中后,会自动覆盖SpringBoot自动装载的Object ...
- coding++:解决Not allowed to load local resource错误-SpringBoot配置虚拟路径
1.在SpringBoot里上传图片后返回了绝对路径,发现本地读取的环节上面出现了错误(Not allowed to load local resource),一开始用的是直接本地路径. 但是在页面上 ...
- iOS 性能优化点
用 ARC 管理内存 在正确的地方使用 reuseIdentifier 尽量把 views 设置为完全不透明 如果你有透明的 Views 你应该设置它们的 opaque(不透明)属性为 YES.例如一 ...
- mongodb服务器启动
以配置文件启动服务器: mongod --config /usr/local/mongodata/config/mongodb.conf(配置文件路径) 客户端启动: mango 关闭mongodb的 ...
- Google浏览器截取整个网页
~Ctrl+shift+i(开发者工具) ~Ctrl+shift+p ~输入full
- JS 剑指Offer(三) 替换字符串中的空格
请实现一个函数,把字符串 s 中的每个空格替换成"%20". 实现这个函数的方法很简单,在JS中可以直接应用正则表达式,代码如下 直接将全局中的space换成%20,一行代码搞定 ...