ドキュメントから、 raw_input() は入力から行を読み取り、それを文字列に変換し(末尾の改行を削除)、それを返します。
そのメモで、
a = 'testing: '
sep = '-'
c = raw_input('give me some args: ') <--- giving 'a b c d'
def wrap( a, sep, *c):
print a + sep.join(c)
wrap(a, sep, c)
str = 'a b c d'
print sep.join(str)
どちらも同じものを出力するはずですが...
print a + sep.join(c)
テストを与えます: abcd
print sep.join(str)
はa- -b- -c- -dを与えます
sep.join()
ラップ関数内で機能しないのはなぜですか?
編集 *c から c に変更しても出力は同じになりますが、*c は引数をアンパックすると思っていたので多少混乱しますが、c を出力すると、文字列 'abc d' と比較して ms ('abc d',) が返されます。ある意味では、アンパックの反対である単一のタプルエンティティにそれらを組み合わせていますか?
または...文字列を解凍せず、リストのみを解凍しますか?