(RPA学习)——将序列分解为单独的变量

324 篇文章 27 订阅
136 篇文章 1 订阅

艺赛旗 RPA9.0全新首发免费下载 点击下载
http://www.i-search.com.cn/index.html?from=line1

问题
我们有一个包含 N 个元素的元组或序列,现在想将它分解为 N 个单独的变量。

解决方案
任何序列或者可迭代的对象都可以通过一个简单的赋值操作来分解为单独的变量,这个操作被称为序列解包。唯一的要求是变量的总数和结构要与序列相吻合。例如:

p = (4, 5)
x, y = p
x
4

y
5

data = [‘ACME’, 50, 91.1, (2019, 6, 30)]
name, shares, price, date = data
name
‘ACME’

date
(2019, 6, 30)

name, shares, price, (year, mon, day) = data
name
‘ACME’

year
2019
如果元素的数量不匹配,将得到一个错误提示。例如:

p = (4, 5)
x, y, z = p
Traceback (most recent call last):
File “”, line1, in
ValueError: need more than 2 values to unpack
高级用法
实际上不仅仅只是元组或列表,只要对象恰好是可迭代的,那么就可以执行解包操作。这包括字符串、文件、迭代器以及生成器。比如:

s = ‘Hello’
a, b, c, d, e = s
a
‘H’

b
‘e’

e
‘o’
当做解包操作时,有时候并不知道具体有多少个值需要解包,这时候可以在变量前加星号。例如:

a, b, *c = ‘Hello’
c
[‘l’, ‘l’, ‘o’]
注意: 前面加了星号的变量最终的值一定是一个列表。

a, b, *c = ‘Hel’
c
[‘l’]

a, b, *c = ‘He’
c
[]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值