1. 概念

Python变量是用于存储值所在的内存位置。换句话说,python程序中的变量将数据提供给计算机进行处理。

Python中的每个值都有一个数据类型。Python中不同的数据类型是Number,List,Tuple,String,Dictionary等。

变量可以用任何名称声明,甚至可以用a,aa,abc等字母表来声明。

变量名称规范遵循Python标识符规范,即字母数字下划线混合,但不能数字开头。用下划线开头表示特殊含义。

Python3支持Unicode作为变量名,即中文变量名也支持,但不推荐。

>>> 名字='王小明' #符合语法,但不推荐

>>> print(名字)

王小明

2. 推荐的命名习惯常量:用下划线连大写,如CAPS_WITH_UNDER;

类或异常:用首字母大写驼峰式,如CapWords;

其他:用下划线连小写,如lower_with_under;

内部使用:用下划线开头,如_lower_with_under。

3. 赋值

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指内存中对象的类型。

等号=用来给变量赋值。

等号=运算符左边是变量名,等号=运算符右边是存储在变量中的值。

Python允许同时为多个变量赋值。

>>> a, b = 1,'a'

>>> x = y = 3

>>> a, b, x, y

(1, 'a', 3, 3)

4. 全局变量和局部变量

所有变量都只能在其所在的代码块或其子代码块中使用,在整个模块或程序中都能使用的变量成为全局变量,其他都视为局部变量。

a=100

def func():

b=10

a=a+b

print(a,b) #报错,b没有定义,子代码块中定义的变量无法在父层代码中使用

注意以上情况对于流程控制产生的代码块不适用,例如:

a=100

i=100

for i in range(3):

b=10

a=a+b

print(a,b,i) #正确运行,得到130 10 2

a=100

if True:

b=10

a=a+b

print(a,b) #正确运行,得到110 10

Python会优先使用最近的局部变量,同名的更高层级变量和全局变量将被忽视,比如:

a=100

def func():

a=99

print(a) #输出99

func()

print(a) #输出100而不是99

局部代码块中可以使用global来创建全局变量,比如:

a=100

def func():

global a

a=99

print(a) #输出99

func()

print(a) #输出99,a已经被覆盖

5. 删除变量

使用del删除,删除后变量将变为未定义,不能再使用。

>>> del a

>>> a

Traceback (most recent call last):

File "", line 1, in

NameError: name 'a' is not defined

6. `None`空变量

空变量表示变量存在,但未赋值。比如:

def fn():

global a

return

b=fn()

print(b) #输出None

print(a) #报错NameError

7. 变量的类型

变量有很多种类型如int、str、list等,但同一变量改变类型是很危险的,应严格避免。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本公众号。

感谢您的阅读!想了解更多有关python语言技巧,请关注我的微信公众号“R语言和Python学堂”,我将定期更新相关文章。

python局部变量含义_Python的变量相关推荐

  1. python局部变量函数_python函数局部变量用法实例分析

    本文实例讲述了python函数局部变量用法.分享给大家供大家参考.具体分析如下: 当你在函数定义内声明变量的时候,它们与函数外具有相同名称的其他变量没有任何关系,即变量名称对于函数来说是 局部 的.这 ...

  2. python 类变量修改_python中类变量与成员变量的使用注意点总结

    前言 最近在用python写一个项目,发现一个很恶心的bug,就是同由一个类生成的两个实例之间的数据竟然会相互影响,这让我非常不解.后来联想到java的类有类变量也有实例变量,因此翻阅了相关资料,发现 ...

  3. python赋值语句格式_Python中变量和变量赋值的几种形式

    动态类型的语言 python是动态类型的语言,不需要声明变量的类型. 实际上,python中的变量仅仅只是用来保存一个数据对象的地址.无论是什么数据对象,在内存中创建好数据对象之后,都只是把它的地址保 ...

  4. python判断数字_python判断变量是否为数字、字符串、列表、字典等

    在实际写程序中,经常要对变量类型进行判断,除了用type(变量)这种方法外,还可以用isinstance方法判断: a = [1,2] if 'list' in str(type(a)): print ...

  5. python中变量的作用域有几种_Python中变量的作用域(variable scope)

    http://www.crifan.com/summary_python_variable_effective_scope/ 解释python中变量的作用域 示例: 1.代码版 #!/usr/bin/ ...

  6. python不允许使用关键字作为变量名_python函数变量_python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数 - 云+社区 - 腾讯云...

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在python 中, ...

  7. python中的抽象含义_Python中下划线的5种含义你都知道吗?

    英文原文:https://dbader.org/blog/meaning-of-underscores-in-python 本文介绍了Python中单下划线和双下划线("dunder&quo ...

  8. python函数里面引用外部变量_Python基础 变量进阶

    目标 变量的引用 可变和不可变类型 局部变量和全局变量 01. 变量的引用 变量 和 数据 都是保存在 内存 中的 在 Python 中 函数 的 参数传递 以及 返回值 都是靠 引用 传递的 1.1 ...

  9. python语言的33个保留字的基本含义_Python学习笔记——Python的33个保留字及其意义,python,pythone33,含义...

    Python学习笔记--Python的33个保留字及其意义,python,pythone33,含义 发表时间:2020-03-27 笔记走起 正文 序号 保留字 含义 1 and 用于表达式运算,逻辑 ...

最新文章

  1. js:深入prototype(下:原型重写)
  2. Java 项目权威排名:Spring生态抢镜,Gradle战胜Maven排第2,点击查看更多...
  3. java setcharat,Java StringBuffer setCharAt()方法
  4. 中国最后一个原始部落-农业大健康·万祥军:历史千年传承
  5. k8s组件说明:kubelet 和 kube proxy
  6. C语言三路基数快排multikey quick sort算法(附完整源码)
  7. Python程序反转给定数字(2种不同方式)
  8. 操作系统(6)-协程
  9. 字段合并_报表数据合并困难?找VBA!数据不标准字段缺失如何合并?找VBA
  10. rabbitmq添加自启动 centos7环境
  11. python安装轮子_自己动手造“轮子”---python常用的几个方法
  12. 冒泡排序的一次自我救赎
  13. php post 302,php – Laravel 5.2 Post 302重定向到GET
  14. 关于IPV6审核被拒的完整分析
  15. 程序员专属浪漫:如何用java代码画❤️
  16. EDA技术及应用实验2运行结果截图
  17. stc15流水灯c语言,STC89C52单片机流水灯
  18. 基于Pytorch实现GAT(图注意力网络)
  19. 数据库应用——MySQL+ATLAS+MMM高可用集群
  20. 为什么程序员下班后从来不关电脑?

热门文章

  1. 轻松搭建基于Serverless的Go应用(Gin、Beego 举例)
  2. 探索中国广电“智慧城市”未来转型路径
  3. 坚持探索与落地并重,阿里巴巴云原生之路全景揭秘
  4. 【干货索引】阿里云大数据计算服务MaxCompute与生态系统的融合
  5. TI Inside,情报协同的最佳实践
  6. 新华三首发数字大脑计划;微软进军物联网领域?说好的三星折叠屏发布会,就这样不开了?Google 发布小型芯片 Jacquard...
  7. OpenStack绝非昨日黄花 | 人物志
  8. 一刀传世网页破天服务器同步,一刀传世破天1844服开服时间表_一刀传世新区开服预告_第一手游网手游开服表...
  9. linux下qt生成可安装的程序,linux – 如何为Qt应用程序创建“安装”包?
  10. python 多线程 廖雪峰_python中多线程与多进程中的数据共享问题