두 개의 Python 함수가 있는데 둘 다 함수 정의에서 가변 인수를 사용합니다. 간단한 예제를 제공합니다 :* args로 파이썬 목록?
def func1(*args):
for arg in args:
print arg
def func2(*args):
return [2 * arg for arg in args]
내가 그들을 구성하고 싶습니다 - func1(func2(3, 4, 5))
같이 -하지만 난 그것이 (6, 7, 8)
가되고 싶어요, ([6, 7, 8],)
을 수 func1
에 args
를 원하지 않는 것처럼 func1([6, 7, 8])
대신 func1(6, 7, 8)
이라고 불렀습니다.
일반적으로 func1(*func2(3, 4, 5))
을 사용하거나 func1
을 확인하여 args[0]
이 목록인지 확인하십시오. 불행히도, 나는이 특별한 경우에 첫 번째 해결책을 사용할 수없고 두 번째를 적용하는 것은 많은 장소에서 그런 수표를 요구할 것입니다 (func1
의 역할에 많은 기능이 있습니다).
아무도 아이디어를 가지고 있지 않습니까? 나는 일종의 내성이 사용될 수 있다고 상상하지만 잘못 될 수 있습니다.
"'내가이 특정 instance'의 첫 번째 솔루션을 사용할 수 없습니다"왜 ? – interjay
파이썬 함수를 호출하지만 문법에서 풀기를 지원하지 않는 파서를 사용하고 있습니다. – exupero