Python中非常使用的6种基本变量的操作与技巧


Posted in Python onMarch 22, 2022

前言

看到这里已经学习了创建各种 Python 数据类型的值。并且显示的值都是文字或常量值。

>>> print(9.98)
9.98

但是对于复杂代码的情况需要下,程序需要对应的数值随着代码的变化而变化的情况并且进行更改。

可以 Python 程序中的每一项数据如何可以用抽象术语object来描述,使用称为variables的符号名称来操作对象

Python中非常使用的6种基本变量的操作与技巧

变量赋值

将变量视为附加到特定对象的名称。在 Python 中,变量不需要像许多其他编程语言那样事先声明或定义。要创建变量需为其分配一个值,然后开始使用它。使用单个等号 ( =) 完成赋值。

>>> n = 998

这里 n 被赋值 998。那么 n 就可以在语句或表达式中使用,其值将被替换。

>>> print(n)
998

就像文字值可以直接从 REPL 会话中的解释器提示中显示,而不需要print()。

>>> n
998

如果更改 n 的值并再次使用它,则将替换为新值。

>>> n = 1000
>>> print(n)
1000
>>> n
1000

Python 还允许链式赋值,这使得可以同时将相同的值分配给多个变量。

>>> a = b = c = 998
>>> print(a, b, c)
998 998 998

变量类型

在许多编程语言中变量是静态类型的。这意味着变量最初被声明为具有特定的数据类型,并且在其生命周期内分配给它的任何值都必须始终具有该类型。

Python中非常使用的6种基本变量的操作与技巧

Python 中的变量不受此限制。在 Python 中,可以为变量分配一个类型的值,然后再重新分配一个不同类型的值。

>>> var = 1.5
>>> print(var)
1.5

>>> var = "string"
>>> print(var)
string

对象引用

Python 是一种高度面向对象的语言。事实上 Python 程序中的几乎每一项数据都是特定类型或类的对象。

# 创建整数对象、赋值、打印
>>> print(100)
100
# 查看数据类型
>>> type(100)
<class 'int'>

赋值创建一个具有值的整数对象,100并将变量分配 n 为指向该对象。

Python中非常使用的6种基本变量的操作与技巧

>>> print(n)
100
>>> type(n)
<class 'int'>

如果用另外的变量赋值,Python 不会创建另一个对象。只是创建一个新的符号名称或引用,m 它指向同一个对象 n。叫 单个对象多次引用 。

>>> m = n

Python中非常使用的6种基本变量的操作与技巧

使用 value 创建一个新的整数对象 200,并m成为对它的引用的话就会形成 对单独对象的引用 。

Python中非常使用的6种基本变量的操作与技巧

后面如果使用字符串赋值。

>>> n = "foo"

Python中非常使用的6种基本变量的操作与技巧

不再有任何对整数对象的引用100,并且无法访问。

当一个对象的引用数降到零时,它就不再可以访问了。到那时,它的生命周期就结束了。Python 最终会注意到它不可访问并回收分配的内存,以便将其用于其他用途。在计算机术语中,这个过程被称为 垃圾回收。

对象身份

在 Python 中,创建的每个对象都有一个唯一标识它的数字,并且不会存在生命周期两个对象出现重叠的相同标识符。一旦某个对象被 垃圾回收,那么该标识符可以再次使用。

内置 Python 函数 id() 返回对象的整数标识符。使用该 id() 函数,可以验证两个变量确实指向同一个对象。

>>> n = 100
>>> m = n
>>> id(n)
2006284448
>>> id(m)
2006284448

>>> m = 200
>>> id(m)
2006287648

赋值后 m = n,m 两者 n 都指向同一个对象,由事实证实 id(m) 和 id(n) 返回相同的数字。一旦 m 被重新分配给200,m 并 n 指向具有不同身份的不同对象。

变量名

Python 中的变量名可以是任意长度,可以由大小写字母(A-Z, a-z)、数字(0-9)和下划线字符(_)组成。另一个限制是,虽然变量名可以包含数字,但变量名的第一个字符不能是数字。

>>> name = "Mr数据杨"
>>> Age = 36
>>> is_teacher = True
>>> print(name, Age, is_teacher )
Mr数据杨 36 True

变量也有自己的命名规则。

  • 变量可以由字母、下划线和数字组成。
  • 变量不能以数字开头。
  • 变量不能与关键字重名。
  • 变量区分大小写。
# 官方的命名规则
>>> my_name = "Mr数据杨"

# 小驼峰式命名法
>>> myName = "Mr数据杨"

# 大驼峰式命名法
>>> MyName = "Mr数据杨"

>>> age = 1
>>> Age = 2
>>> aGe = 3
>>> AGE = 4
>>> a_g_e = 5
>>> _age = 6
>>> age_ = 7
>>> _AGE_ = 8

>>> print(age, Age, aGe, AGE, a_g_e, _age, age_, _AGE_)
1 2 3 4 5 6 7 8

保留字(关键字)

不能冲突的关键词 33 个

Python中非常使用的6种基本变量的操作与技巧

>>> import keyword
>>> print(",".join(keyword.kwlist))
>>> False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,raise,return,try,while,with,yield

具体含义如下,不用刻意去记,这些都会有区别于普通代码的颜色提示,你要是用他们做变量名了,一看就会知道的。

and: 用于表达式运算,逻辑与操作

as: 用于类型转换

assert: 断言,用于判断变量或条件表达式的值是否为真

break: 中断循环语句的执行

class: 用于定义类

continue: 继续执行下一次循环

def: 用于定义函数或方法

del: 删除变量或者序列的值

elif: 条件语句 与if else 结合使用

else: 条件语句 条件语句,与if,elif结合使用。也可以用于异常和循环使用

except: 包括捕获异常后的操作代码,与try,finally结合使用

finally: 用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用

from: 用于导入模块,与import结合使用

global: 定义全局变量

if: 条件语句,与else,elif结合使用

import: 用于导入模块,与from 结合使用

in: 判断变量是否存在序列中

is: 判断变量是否为某个类的实例

lambda: 定义匿名函数

not: 用于表达式运算,逻辑非操作

or: 用于表达式运算,逻辑或操作

pass: 空的类,函数,方法的占位符

print: 打印语句

raise: 异常抛出操作

return: 用于从函数返回计算结果

try: 包含可能会出现异常的语句,与except,finally结合使用

while: 循环语句

with: 简化Python的语句

yield: 用于从函数依次返回值

help(keywords 对应关键字) 可以通过键入Python 解释器随时查看此列表。保留字区分大小写,必须完全按照所示使用,除了 False , NoneTrue 其他都是区分大小写。

>>> for = 1
SyntaxError: invalid syntax

到此这篇关于Python 6种基本变量操作技巧总结的文章就介绍到这了,更多相关Python变量操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python中使用M2Crypto模块实现AES加密的教程
Apr 08 Python
介绍Python的@property装饰器的用法
Apr 28 Python
详细解析Python中的变量的数据类型
May 13 Python
Python中元组,列表,字典的区别
May 21 Python
Python编程之字符串模板(Template)用法实例分析
Jul 22 Python
TensorFlow模型保存/载入的两种方法
Mar 08 Python
Python实现端口检测的方法
Jul 24 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
Jun 18 Python
python创建学生管理系统
Nov 22 Python
Python 实现取多维数组第n维的前几位
Nov 26 Python
Python udp网络程序实现发送、接收数据功能示例
Dec 09 Python
python使用torch随机初始化参数
Mar 22 #Python
Django基础CBV装饰器和中间件
详解pytorch创建tensor函数
Mar 22 #Python
详解Python+OpenCV绘制灰度直方图
PYTHON使用Matplotlib去实现各种条形图的绘制
Python+OpenCV实现在图像上绘制矩形
Matplotlib绘制条形图的方法你知道吗
You might like
PHP新手用的Insert和Update语句构造类
2012/03/31 PHP
在Mac OS上搭建Nginx+PHP+MySQL开发环境的教程
2015/12/21 PHP
Extjs3.0 checkboxGroup 动态添加item实现思路
2013/08/14 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
jQuery满意度星级评价插件特效代码分享
2015/08/19 Javascript
JavaScript函数学习总结以及相关的编程习惯指南
2015/11/16 Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
2016/03/03 Javascript
Three.js学习之网格
2016/08/10 Javascript
解决vue-cli中stylus无法使用的问题方法
2017/06/19 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
vue弹窗组件使用方法
2018/04/28 Javascript
create-react-app 修改为多入口编译的方法
2018/08/01 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
vue实现的仿淘宝购物车功能详解
2019/01/27 Javascript
VSCode搭建Vue项目的方法
2020/04/30 Javascript
prettier自动格式化去换行的实现代码
2020/08/25 Javascript
vue实现列表拖拽排序的功能
2020/11/02 Javascript
[49:20]2014 DOTA2国际邀请赛中国区预选赛5.21 CIS VS TongFu
2014/05/22 DOTA
numpy中的高维数组转置实例
2018/04/17 Python
python range()函数取反序遍历sequence的方法
2018/06/25 Python
python实现求特征选择的信息增益
2018/12/18 Python
Python关于excel和shp的使用在matplotlib
2019/01/03 Python
解决python中画图时x,y轴名称出现中文乱码的问题
2019/01/29 Python
Python从文件中读取数据的方法讲解
2019/02/14 Python
python中append实例用法总结
2019/07/30 Python
pygame实现俄罗斯方块游戏(AI篇1)
2019/10/29 Python
浅谈python多线程和多线程变量共享问题介绍
2020/04/17 Python
python语音识别指南终极版(有这一篇足矣)
2020/09/09 Python
pycharm + django跨域无提示的解决方法
2020/12/06 Python
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
阿里健康大药房:阿里自营网上药店
2017/08/01 全球购物
改变生活的男士内衣:SAXX Underwear
2019/08/28 全球购物
主持人演讲稿范文
2013/12/28 职场文书
机械电子工程专业自荐书
2014/06/10 职场文书
2014年大学班长工作总结
2014/11/14 职场文书
2014年学校卫生工作总结
2014/11/20 职场文书