美文网首页
4 | 变量

4 | 变量

作者: 运维开发_西瓜甜 | 来源:发表于2019-12-27 18:48 被阅读0次

https://www.jianshu.com/p/0bd0816c5bd8

一、 变量的声明

python语言是动态语言

  • 变量不需要事先声明

  • 变量的类型不需要声明

  • 每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

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

变量名和变量值之间使用等号进行连接 =

等号左边成为 变量名
等号右边成为 变量的值

a = 1
a = '千锋'


二、 变量命名规则:

可以包含以下字符的组合

  • 大小写字母(a-z,A-Z)

  • 变量名区分大小写; nameName 是不同的变量

  • 数字(0-9)

  • 下划线(_)

但是变量名称不可以 以数字开头。
错误示例: 192_net
正确示例: net_192



三、 变量命名潜规则:

  • 基础知识没整明白之前,不要以单下划线和双下划线开头;如:_user__user
  • 变量命名要易读;如:使用 user_name,而不是 username
  • 不用使用标准库中(内置)的模块名或者第三方的模块名
  • 不要用这些 Python 内置的关键字:
>>> import keyword
>>> 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']


由于打印效果,上面的输出格式已做人工处理



四、认清 python 中的变量

在 python 中究竟该如何正确理解变量的赋值过程呢?
比如:

s = 'hello'

以上的变量赋值,应该说成把变量名 s 分配给字符串对象 hello 更合理。

hello 这个字符串对象会在内存中先被创建,之后再把变量名 s 分配给这个对象。

image.png

所以要理解 Python 中的变量赋值,应该始终先看等号右边

等号右边的对象先被创建或者被获取,在此之后左边的变量名才会被分配给hello 这个对象,这就像为对象贴上了标签。

变量名本质上可以说是 一个对象的标签 或者说是 对象的名字。
既然是标签/名字,那一个对象就可以有多个标签或者名字
比如: 张三 和 小张 指的都是同一个人

请看下面的代码示例:

a = 1
b = a
a = 2
print(b)  # b 会是 ?

a = 1 时如下图:

image.png

b = a 时如下图:

image.png

a = 2 时如下图:

image.png

上面的 b = a 我们称它为 传递引用,此时对象会拥有两个名称(标签) ,分别是 ab

这种变量的赋值方式也称为引用赋值。



五、变量的多元赋值

在 Python3 中你可以这样给变量赋值

In [2]: x, y, z = 1, 2, 3

In [3]: x
Out[3]: 1

In [4]: y
Out[4]: 2

In [5]: z
Out[5]: 3

当然也可以这样

In [10]: a, b, c = 'abc'

In [11]: a
Out[11]: 'a'

In [12]: b
Out[12]: 'b'

In [13]: c
Out[13]: 'c'

假如你需要对一个序列类型中的数据进行一一解开赋值,那就需要等号左边的变量名和序列类型数据中的元素个数相同。

这种多元赋值方式在 Python 中也可以称为元组解包。

更多多元赋值技巧点我



六、Python 中对象(变量的值)都有三个特性

# 唯一标识,是对象在内存中的整数表示形式,在 CPython 中可以理解为# 内存地址
# 可以用 id 这个函数查看 
id(10)    # 直接给一个对象

 n = 10
id(n)      # 也可以是一个已经赋值过的变量名

# 类型, 对象都有不同的类型,用 type 这个函数查看
type(10)   # int 整型

type(n)

# 值,对象本身
10

相关文章

  • Linux Shell变量

    BASH SHELL变量主要分为4种: 用户自定义变量、环境变量、位置变量、预定义变量。 本文主要介绍这4种变量:...

  • 4 | 变量

    https://www.jianshu.com/p/0bd0816c5bd8 一、 变量的声明 python语言是...

  • 2022-01-15

    变量4

  • 类,变量,迭代器

    1、变量 python中实际有4种变量,分别是全局变量,类变量,实例变量,局部变量。 - 全局变量:类之外的变量,...

  • httprunner 3.X (5)variables变量优先

    1)配置变量->全局变量 2)导出变量->将局部变量变成全局变量 3)参数变量->局部变量 4)提取变量->局部变...

  • C语言3 -变量

    C语言3 -变量 变量声明 变量类型 变量名; 变量类型 用来说明宽度是多大 int 4个字节short ...

  • go

    1.定义变量# 2:匿名变量# 3:常量# 3:枚举# 4:类型# 4:函数名定义注意事项#

  • (4)变量对象

    前言 对于每个执行上下文,都有三个重要属性: 变量对象(Variable object,VO) 作用域链(Scop...

  • 4、 Dart 变量

    1、不指定类型,即使用var关键字 2、明确指定类型 3、常量1 (初始化后不能被修改) 4、常量2 (初始化后不...

  • Python语言基础之——变量和运算符

    1.变量 1.定义变量 2.使用变量 3.修改变量 重新给变量赋值 4. 同时给多个变量赋值 2.变量赋值的原理 ...

网友评论

      本文标题:4 | 变量

      本文链接:https://www.haomeiwen.com/subject/ttuhoctx.html