Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47037
  • 博文数量: 23
  • 博客积分: 425
  • 博客等级: 下士
  • 技术积分: 237
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-10 09:57
文章分类

全部博文(23)

文章存档

2013年(23)

我的朋友

分类: Python/Ruby

2013-01-05 18:45:00

Python的变量与赋值

 在Python中变量名规则与其他大多数高级语言一样,都是受C语言影响的,另外变量名是大小写敏感的。

Python是动态类型语言,也就是说不需要预先声明变量类型,变量的类型和值在赋值那一刻被初始化,其变量赋值主要有四种方法:

 1.赋值操作符(=)

Python中的赋值并不是直接将一个值赋给一个变量,其是通过引用传递的,在赋值时,不管这个对象是新创建的还是一个已经存在的,都是将该对象的引用(并不是值)赋值给变量,其赋值语句是没有返回值的

例如,在python中,类似语句是非法的

点击(此处)折叠或打开

  1. >>> x=1
  2.     >>> y=(x=x+1)
  3.       File "", line 1
  4.         y=(x=x+1)
  5.             ^
  6.     SyntaxError: invalid syntax
2.增量赋值(等号与算术操作符组合)

增量赋值是将算式结果重新赋值给左边的变量,例如 x=x+1 写为 x+=1

其意义在于第一个对象仅被处理过一次

注意,Python不支持类似x++ ++x之类的前后置自增自减运算

 3. 多重赋值

如下例,创建一个值为1的整型对象,将对象的同一个引用赋值给x,y和z

>>> x=y=z=1

 4.“多元”赋值

将多个变量同时赋值给多个变量,等式两边的对象都是元组

例如

点击(此处)折叠或打开

  1. >>> x,y,z=1,2,3
  2.     >>> x
  3.     1
  4.     >>> y
  5.     2
  6.     >>> z
  7.     3
另外,多元赋值可以实现无需中间变量交换两个变量的值

点击(此处)折叠或打开

  1. >>> x,y=1,2
  2. >>> x
  3. 1
  4. >>> y
  5. 2
  6. >>> x,y = y, x
  7. >>> x
  8. 2
  9. >>> y
  10. 1

阅读(524) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~