2016-10-03 58 views
-1

我在开芝麻(python)写一个inline_script。 谁能告诉我这里有什么问题吗? (我认为它的东西很简单,但我找不到)开芝麻抵消

当我把数字放在List = [1,2,3,4,5,6,7]第一行的时候,但第二行不工作:(

BalanceList1 = range(1:7) + range(13:19) #does not work 
if self.get('subject_nr') == "BalanceList1": 

#here follows a list of commands 

BalanceList2 = list(range(7:13))+list(range(19:25)) #does not work either 
elif self.get('subject_nr') == "BalanceList2": 

#other commands 
+0

'BalanceList1 =范围(1:6)+范围(13:19)'会做你想要什么。 –

+0

我仍然得到“无效的语法” – SDahm

回答

1

在蟒蛇2.x的,你可以做到以下几点:

BalanceList1 = range(1,6) + range(13,19) 

这将产生2所列出并在BalanceList1一起添加它们:

[1, 2, 3, 4, 5, 13, 14, 15, 16, 17, 18] 

在蟒蛇3.x中,range不返回list了,但一个迭代器(和xrange走了),你必须明确地转换为list

BalanceList1 = list(range(1,6))+list(range(13,19)) 

更加理想的方式,以避免产生过多的临时名单将是:

BalanceList1 = list(range(1,6)) 
BalanceList1.extend(range(13,19)) # avoids creating the list for 13->18 

更优化比: