在python中,有各种不同类型的语句。一个python程序是由模块构成的;一个模块由一条或多条语句组成;每个语句由不同的表达式组成;表达式可以创建和操作对象。下面来看看python中的语句。

赋值语句:

标识符 = object

判断语句:

if/elif/else

循环相关语句:

while/else

for/else

break

continue

类及函数相关语句:

class

def

return

yield

global

lambda

object。

method()

异常相关语句:

try/except/finally

raise

其他语句:

print

del

exec

assert

pass

首先来看赋值语句。一个赋值语句由三部分组成,变量标识符、=和赋予标识符的对象。

在python中,任何变量都是引用变量,因此,变量标识符代表的内存空间中其实只是保存了对象的一个引用。在给一个变量赋值的过程中,也同时创建了这个变量,而并不需要像c中的一样,要先定义一个变量,然后给它赋值。

赋值语句可以分为两大类,一种是显式赋值语句,一种是隐式赋值语句。

先来看显式赋值语句:

L= range(3)

[x,y]=[1,2]

x,y=[3,4]

x,y=5,6

x = y = dict()

这五个语句,可以分为三类,第1行是最为普通的赋值语句。第2 3 4行可以看成是一类,通用模式为 seq1 = seq2,也就是等号两边都是一个序列,可以是list tuple还可以是string。

需要注意的是,len(seq1)必须等于len(seq2),否则会出现ValueError。这样赋值的结果是seq1[0]=seq2[0],seq1[1]=seq2[1]。。。。第5行表示把x y 赋为dict(),也就是一个空的dictionary。

在这种形式的赋值语句中,赋值过程是从右到左进行的,即先y= dict(),然后再x=y。

隐式赋值会出现在以下六种语句中:

import types

from types import *

for x,y in D。itertimes()

def Test(one, two): pass

class Car: pass

Test(1,3)

隐式赋值的特点是没有出现赋值操作符=。

第1行,会引入types。py中所有对象和变量,比如types。ListType=list、types。DictType=dict。第2行与第1行类似,会直接引入ListType=list、types。StringType=str等。第3行,会把x和y,分别赋为x=D。

keys()[0] x=D。keys()[1]。。。,同时y会变赋为y=D。values()[0] y=D。values()[1]。。。。第4行,会把Test指向为一个函数对象。第5行,会把Car指向一个“类”对象。第6行,通过调用一个函数,会把Test(one, two)函数中的形式参数one赋为1,two赋为3,即one =1 two=3。

上面用到的one two Test Car types等等都是标识符,标识符可以用来代表变量、函数名、类名、模块名等。标识符的选择也有一定的规则,三条“军规”:

第一条:标识符不能与保留字(关键字)相同

第二条:标识符是大小写敏感的

第三条:标识符必须用_或字母开头,只能由_、字母、数字组成,长度没有限制。

先来看第一条,这一条可以说是所有计算机语言都会有的一条规则。在python中保留字有31个。基本上在是组成语句的单词,比如print del return等。由于模块名在引入程序的时候,会自动转换为变量名,因此模块的名称也不能是关键字,否则没有办法引入。

保留字要与在__builtins__模块中的一些标识符相互区别,比如list()是在这个模块中的,其中的list就不是保留字。

第二条,只要记住就行了。

第三条,单个_也是一个合法的标识符,在python交互模式中,它用来表示最后一个表达式的值。

其实在python中,几乎所有以_开头的标识符都有特殊的意思,虽然这不是强制性的规定。

以一个_开头的标识符,比如_D _x 等,在import语句中不被引入,也就是说这种标识符标识的变量和定义是专属于这个模块的,在模块外面是看不到的。有点类似于c中的private变量和函数。

以两个_开头,同时以两个_结尾的标识符,比如__name__ __main__ __builtins__等,这些变量或函数是由python解释器调用的。比如:__builtins__这个模块就会在python启动时自动载入。再比如:在一个类型中的__gt__方法由python解释器调用,当把这个类型用于>的表达式时。

以两个_开头,但最后没有两个_,比如说:__x,这种标识符是一个类中的内部变量或函数。有点类似于c中的private变量和函数。

在python中也有类似于c中的+= -= *=等复合运算符。算术运算符、位运算符都可以用这种方式进行书写。

看下面这条语句:

>>> L = range(3)

>>> L += [3,4]

第二条语句的效果等价于L = L + [3,4],但实际上与它更相同的是L。extend([3,4])。后一种方式比前一种方式的运行效率要高,也就说采用类似于+=这种复合运算符的时候,python会选择更有效率的方式进行运算。

全部

python中赋值语句的作用_python中return可以使用赋值语句吗?相关推荐

  1. python主函数的作用_python中main函数的用法

    原博文 2020-03-27 20:25 − **什么场景下会有main函数?** 当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行. **ma ...

  2. python中count的作用_python中内置的.count是什么?

    我一直在checkio.com上解决问题,其中一个问题是:"编写一个函数来查找在给定字符串中出现最大次数的字母" 最重要的解决方案是: import string def chec ...

  3. python匿名函数的作用_Python中的匿名函数及递归思想简析

    匿名函数 前言 上次咱们基本说了一下函数的定义及简单使用,Python中的基本函数及其常用用法简析,现在咱们整点进阶一些的.同样都是小白,咱也不知道实际需要不,但是对于函数的执行顺序以及装饰器的理解还 ...

  4. python中count的作用_python中函数COUNT()的功能是什么

    python中函数COUNT()的功能是统计字符串里某个字符出现的次数,语法为[str.count("char", start,end)],其中str为要统计的字符,star为索引 ...

  5. python中beautifulsoup的作用_python 中BeautifulSoup入门

    在前面的例子用,我用了BeautifulSoup来从58同城抓取了手机维修的店铺信息,这个库使用起来的确是很方便的.本文是BeautifulSoup 的一个详细的介绍,算是入门把.文档地址:http: ...

  6. python中format函数作用_python中format函数什么意思

    python中format函数什么意思? Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % ...

  7. python except用法与作用_Python中关于try-except用法的错误和异常处理详解

    本文实例讲述了Python中的错误和异常处理操作.分享给大家供大家参考,具体如下: #coding=utf8 print ''''' 程序编译时会检测语法错误. 当检测到一个错误,解释器会引发一个异常 ...

  8. python中逗号的作用_Python中逗号作用的实例分析

    逗号在类型转化中的使用 主要是元组的转换 例如: >>> a=11 >>> b=(a) >>> b 11 >>> b=(a,) ...

  9. python中的pass语句_Python中pass的作用与使用代码示例

    本篇文章小编给大家分享一下Python中pass的作用与使用代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. Python中pass的作用 空语 ...

最新文章

  1. 北京AI产业联盟来了!百度牵头,小米美团滴滴旷视纷纷入会
  2. 2017年------阿里大神带你详解Dubbo架构设计
  3. python安装pyautogui遇到的gbk异常解决
  4. 全国计算机等级考试题库二级C操作题100套(第35套)
  5. 哪种开源许可证最适合商业化?
  6. esp8266oled做时钟python_利用esp8266和鸿蒙带的OLED屏做了一个时钟
  7. 素数环 与 算法 全排列
  8. 我国初步建立法规,短期难扭转生物多样性减少趋势
  9. SQL Server同实例下不同数据库表的同步(job实现)
  10. python——迭代器itertools.cycle
  11. springmvc上传图片后显示损毁或不能显示_猿蜕变系列7——也说说springMVC上传姿势...
  12. python程序设计实训心得体会_20194220 实验四《Python程序设计》实验报告
  13. 法定节假日调整方案公布
  14. isilon域环境配置
  15. 安装Visio + Windows Installer 与即点即用版本冲突 + 卸载Office + 重装Office
  16. 【学习笔记】前端开发面试锦集
  17. 重要性采样(importance sampling)
  18. 从DLL生成LIB文件
  19. ISV在“淘宝”上淘宝
  20. Android SnackBar

热门文章

  1. [转] Boost智能指针——scoped_ptr
  2. Android使用SAX解析XML(6)
  3. C#中readonly, const 和 in型参数使用
  4. 关于intellij的配置安装
  5. Linux 命令详解(六)Linux 守护进程的启动方法
  6. 密织“地网” 南充“试水”智慧安防
  7. win10计算机里文件夹怎么删除文件,如何删除win10“此电脑”中6个文件夹?
  8. fossid安装教程_如何在一个 U 盘上安装多个 Linux 发行版
  9. python编程规范 谷歌_Python最新编程规范,新手必学
  10. 【ABAP】SAP判断单据是否被锁定