Форум сайта python.su
0
def uname_func():
uname = "uname"
uname_arg = "-a"
print ("Gathering system information with %s command:\n") % uname
subprocess.call([uname, uname_arg])
name = 2
print('name=', %s) %name
SyntaxError: invalid syntax
>>> print('name=',%s) %name
File "<stdin>", line 1
print('name=',%s) %name
Отредактировано (Окт. 13, 2011 10:04:34)
Офлайн
13
Попробуйте так: print(“Gathering system information with %s command:\n” % uname)
Отредактировано (Окт. 13, 2011 10:07:15)
Офлайн
0
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> uname = "uname"
>>> uname_arg = "-a"
>>> print ("Gathering system information with %s command:\n") % uname
Gathering system information with %s command:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for %: 'NoneType' and 'str'
Офлайн
0
Да, получилось. Я так полагаю что если теперь print стала функцией, то ей надо все как аргументы передавать внутри сковок???
Офлайн
13
Дело не совсем в этом, но в целом таки да.
Просто в python 2.6 ваша первая конструкция обозначает нечто типа этого:
var = ("Gathering system information with %s command:\n") % uname
print varОфлайн
0
Понял, спасибо большое.
Офлайн
857
print("Gathering system information with {0} command:\n".format(uname))Офлайн