Python 与大多数其它语言一样有局部变量和全局变量之分,但是它没有明显的变量声明。变量通过首次赋值产生,当超出作用范围时自动消亡。

Example 1. 定义 myParams 变量

首先注意缩进。 if 语句是代码块,需要像函数一样缩进。

其次,变量的赋值是一条被分成了多行的命令,用反斜线 (“ ”) 作为续行符。

1、书写多行命令

当一条命令用续行符 (“ ”) 分割成多行时,后续的行可以以任何方式缩进,此时 Python 通常的严格的缩进规则无需遵守。如果您的 Python IDE 自由对后续行进行了缩进,您应该把它当成是缺省处理,除非您有特别的原因不这么做。

严格地讲,在小括号,方括号或大括号中的表达式 (如定义一个 dictionary ) 可以用或者不用续行符 (“ ”) 分割成多行。甚至在不是必需的时候,我也喜欢使用续行符,因为我认为这样会让代码读起来更容易,但那只是风格问题。

您从未声明过变量 myParams ,您只是给它赋了一个值。这点就像是VBScript 没有设置 option explicit 选项一样。幸运的是,与 VBScript 不同,Python 不允许您引用一个未被赋值的变量,试图这样做会引发一个异常。

2、变量引用

Example2. 引 用 未 赋 值 的变 量

迟早有一天您会为此而感谢 Python 。

3、一次赋多值

Python 中比较 “酷” 的一种编程简写是使用序列来一次给多个变量赋值。

Example 3. 一次赋 多值

(1) v 是一个三元素的 tuple,并且 (x, y, z) 是一个三变量的 tuple。将一个 tuple赋值给另一个 tuple,会按顺序将 v 的每个值赋值给每个变量。

这种用法有许多种用途。我经常想要将一定范围的值赋给多个变量。在 C 语言中,可以使用 enum 类型,手工列出每个常量和其所对应的值,当值是连续的时候这一过程让人感到特别繁琐。而在 Python 中,您可以使用内置的 range函数和多变量赋值的方法来快速进行赋值。

Example 4. 连 续值赋值

(1) 内置的 range 函数返回一个元素为整数的 list。这个函数的简化调用形式是接收一个上限值,然后返回一个初始值从 0 开始的 list,它依次递增,直到但不包含上限值。(如果您愿意,您可以传入其它的参数来指定一个非 0的初始值和非 1 的步长。也可以使用 print range.__doc__ 来了解更多的细

节。)

(2) MONDAY 、 TUESDAY 、 WEDNESDAY 、 THURSDAY 、 FRIDAY 、 SATURDAY 和 SUNDAY 是我们定义的变量。(这个例子来自 calendar 模块。它是一个很有趣的打印日历的小模块,像 UNIX 的cal命令。这个calendar 模块定义了一星期中每天的整数常量表示。)

(3) 现在每个变量都拥有了自己的值: MONDAY的值为0 , TUESDAY的值为1 ,等等。

您也可以使用多变量赋值来创建返回多个值的函数,只要返回一个包含所有值的 tuple 即可。调用者可以将其视为一个 tuple,或将值赋给独立的变量。许多标准的 Python 库都是这样做的,包括os模块。

Python的变量声明相关推荐

  1. python公共变量声明_Python变量声明

    繁星coding 好的,首先要做的事情.Python中没有"变量声明"或"变量初始化"这样的东西.简直就是我们所谓的"任务",但应该只是称之 ...

  2. python global变量声明_Python global变量

    偶然遇到一次"global name 'aglobalname' is not defined"问题,又重新理解了一下global全局变量的用法 1. 常用情况: 按照我们常用的p ...

  3. Python 的变量作用域和 LEGB 原则

    在 Python 程序中创建.改变或查找变量名时,都是在一个保存变量名的地方进行中,那个地方我们称之为命名空间.作用域这个术语也称之为命名空间. 具体地说,在代码中变量名被赋值(Python 中变量声 ...

  4. python是什么语言、即变量不需要显示声明数据类型-python中可以声明变量类型吗...

    变量(variable)是Python语言中一个非常重要的概念.变量的主要作用就是为Python程序中的某个值起一个名字.类似于"张三"."李四"." ...

  5. python 声明变量_Python的变量声明

    Python 与大多数其它语言一样有局部变量和全局变量之分,但是它没有明显的变量声明.变量通过首次赋值产生,当超出作用范围时自动消亡. Example 1. 定义 myParams 变量 if __n ...

  6. python中变量不需要事先声明_第二章 Python 变量

    2.1  Python变量 在 Python 中变量不需要事先声明变量名及其类型,直接赋值即可创建各种变量(不要使用关键字为变量名),例如: >>>x = 4 >>> ...

  7. python语言变量随时声明_2. Go语言五种变量创建的方法

    对于只有 Python 语言经验的朋友,也许会不太理解声明这个词,在 Python 中直接拿来就用,也不用声明类型啥的. Go 语言是静态类型语言,由于编译时,编译器会检查变量的类型,所以要求所有的变 ...

  8. python变量定义问题_python 定义n个变量方法 (变量声明自动化)

    python 定义n个变量方法 (变量声明自动化) code: for i in range(100): cmd = "t%s = 1" % i exec cmd eval(&qu ...

  9. Python(2)变量声明、变量类型

    1.变量声明 声明变量的时候,直接使用例如a = 1这样的方式即可. 既不用像js语言那样使用一个通用的var或者let之类方式表示声明,也不需要像c++语言那样使用更严格的int或char方式进行声 ...

最新文章

  1. va_list、va_start和va_end使用
  2. cosbench 安装
  3. SpringBoot项目中静态资源加载失败,那可能是自定义配置类继承了WebMvcConfigurationSupport这个类
  4. html表格横向竖向滚动,利用纯css实现table固定列与表头中间横向滚动的思路和实例...
  5. android drawable 比例,Android中的Drawable基础与自定义Drawable
  6. java web部分问题以及解决方案
  7. 为Editplus安装smali代码语法高亮插件
  8. SQL 与 Hibernate 性能相差悬殊
  9. c语言如何删除链表相同元素,【图片】想问一道链表题,如何删除重复元素【c语言吧】_百度贴吧...
  10. [转载] 深入理解log机制
  11. tensorboard的安装与使用
  12. vba中split用法
  13. 什么是软件实施?软件实施前景几何?软件实施的面试题有那些?
  14. Tensorflow函数学习笔记2---tf.multipy和tf.matmul
  15. Mobaxterm 中文输入Backspace按键问题
  16. PhoneApp的启动过程
  17. 美军回应网传UFO:视频为真 现有人类技术无法达到
  18. ai动漫生成软件哪个好?这篇文章告诉你
  19. php去掉工作日,2014年工作日计算(去除法定假日和周六日,但包括调休日)
  20. 【Quectel移远展锐平台5G模组RX500U/RG200U使用指南(三)-PCIE】

热门文章

  1. C语言转义字符 转义序列(内含\ddd \xhh 含义)
  2. 蓝牙模块惨痛教训——模块与单片机串口的隔离(更新)
  3. 「爬虫教程」吐血整理,最详细的爬虫入门教程
  4. EOS智能合约开发系列(15): N与name
  5. 数据挖掘经典书籍推荐
  6. pycharm运行tensorflow报错
  7. 广告投放平台DSP搭建:你需要了解的产品核心模块
  8. 区块链系统开发实现原理,区块链为什么叫区块链?
  9. 给网页设计师和前端开发者看的前端性能优化
  10. DC Motors – Voltage Vs. Output Speed Vs. Torque