基本的python字符串格式。

时间:2012-03-26 17:09:25

标签: python string-formatting os.system

我遇到了Python(v2.6.5)中字符串格式转换的问题。 我试着将字符串设置为这样的格式......

os.system ('/%s/tabix' % (path) '-h -f ftp://<some_url> 4:387-388 > file.out' )

感     路径= '家/约翰'

但我总是得到同样的错误

"Not enough arguments for format string"

我阅读了文档, 这篇文章Not enough arguments for format string但我找不到合适的答案。

有人可以帮助我吗?

提前致谢,

PEIXE

3 个答案:

答案 0 :(得分:6)

os.system ('/%s/tabix -h -f ftp://<some_url> 4:387-388 > file.out' % (path))

您需要在字符串末尾添加格式参数。不在两个字符串之间。

答案 1 :(得分:1)

我认为问题在于你在字符串中间填充(路径)而不同时执行显式字符串连接。最好的解决方案就是:

'/%s/tabix -h -f ftp://<some_url> 4:387-388 > file.out' % (path)

答案 2 :(得分:1)

您发布的内容实际上是语法错误。缺少什么?

>>> import os
>>> path='home/john'
>>> os.system ('/%s/tabix' % (path) '-h -f ftp://<some_url> 4:387-388 > file.out' )
  File "<stdin>", line 1
    os.system ('/%s/tabix' % (path) '-h -f ftp://<some_url> 4:387-388 > file.out' )
                                                                                ^
SyntaxError: invalid syntax

我建议你使用

os.system('/{path}/tabix -h -f ftp://<some_url> 4:387-388 > file.out'.format(path=path))