2011-12-17 13 views
5

Jak mogę wydrukować wszystkie argumenty przekazane do skryptu Pythona?Jak mogę wydrukować wszystkie argumenty przekazane do skryptu Pythona?

To, co starałem:

#!/usr/bin/python 
print(sys.argv[1:]); 

aktualizacji

Jak mogę zapisać je do pliku?

#!/usr/bin/python 
import sys 
print sys.argv[1:] 
file = open("/tmp/test.txt", "w") 
file.write(sys.argv[1:]) 

uzyskać

TypeError: expected a character buffer object 
+3

Zamiast mówić „to nie działa”, trochę czasu, aby dowiedzieć się, dlaczego * * to „nie działa”. Obejmuje to takie rzeczy jak czytanie - * i publikowanie * - komunikaty o błędach/symptomy. –

Odpowiedz

23

Musisz import sys za to do pracy.

#!/usr/bin/python 

import sys 
print sys.argv[1:] 

Przykład

:/tmp% cat foo.py 
#!/usr/bin/python 

import sys 
print (sys.argv[1:]); 

:/tmp% python foo.py 'hello world' arg3 arg4 arg5 
['hello world', 'arg3', 'arg4', 'arg5'] 
2

Twoja ostatnia linia jest źle.

Powinno być:

file.writelines(sys.argv[1:]) 
2

problem jest z listy piszą args że nie poradzi.

Możesz chcieć użyć:

file.write('\n'.join(sys.argv[1:])) 
Powiązane problemy