python 多变量赋值

为什么我用start,stop=10
这样写就不行,必须在后面再加上一个start!
回答
至于为什么需要这样赋值,可能跟楼主学习过C,C++或者JAVA语言有关,举例来讲, 在C语言中,如下代码是可以正常编译的:
#include <stdio.h>int main()
{
 int start, stop  = 10;
 int a;
 printf("start:%d, stop:%d, a:%d", start, stop, a);
 return 0;
}
输出:start:0, stop:10, a:0
说明10赋值给了stop, start跟a一样,你只是定义了这两个变量,然后C编译器自动把他们初始化为0

在python就不太一样, python无需变量申明,你只要使用变量并同时赋值,这个变量就产生了,所以像上述语句中start,a变量都只是定义,在python中是不允许的。
另外python中有多变量赋值这个概念
如:
>>> v = ('a', 'b', 'e')
>>> (x, y, z) = v     
>>> x 'a'
>>> y 'b'
>>> z 'e'
所以如果像以下方式赋值的话:start,stop=10
10只是赋值给了start,而stop没有被赋值,所以出错。
可以这样 start,stop = 10 , 20   
输出: start=10, stop=20
如果
 start = 9
 start,stop = 10 , start 输出:start = 10stop = 9

参考:

http://zhidao.baidu.com/question/230686818.html?         from=pubpage&msgtype=2http://zhidao.baidu.com/question/130438908.html

转载于:https://my.oschina.net/liango/blog/79789

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值