簡體   English   中英

將列表作為幾個參數傳遞

[英]Passing a list as several arguments

我正在嘗試使用列表作為參數,使用:

>>> l = [1,2,3]
>>> print( *l )

我有一個錯誤:

File "<stdin>", line 1
t*
 ^
SyntaxError: invalid syntax

我正在使用python 2.7:

>>> import sys
>>> print sys.version
2.7.3 (default, Jan  2 2013, 13:56:14)
[GCC 4.7.2]

我想念什么? 謝謝 ! :)

默認情況下, print在Python 2.7中不是功能。 要使用函數而不是給定模塊中的語句,請使用future語句:

from __future__ import print_function

這需要放在文件的頂部,而不是不是future語句(或模塊docstring)的任何代碼之前,因為編譯器需要先查看future語句,然后才能根據future語句以不同的方式編譯模塊的其余部分。

在Python 2.7中print不是函數。 這是一個聲明。 所以,你應該做

print l           # [1, 2, 3]

如果你想使用print在Python 2.7的功能,你應該導入print_function__future__ ,像這樣

from __future__ import print_function
l = [1,2,3]
print(l)          # [1, 2, 3]
print(*l)         # 1 2 3

如果要使用print作為函數,則必須使用__future__或將python升級到3+

這是您要搜索的嗎?

>>> l = [1, 2, 3]
>>> def x(*args):
...     print args[0]
...     print args
>>> x(*l)
1
(1, 2, 3)

如果是,請同時查看Python文檔中的“ 任意參數列表 ”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM