Python将字符串+变量+字符串存储到变量中

时间:2013-04-18 15:00:55

标签: python variables text

我有一个两难的境地,文件名的中间位置会发生变化,但开头和结尾都会保持不变。我试图将最终结果存储在变量中,但我对如何执行此操作感到困惑。

ips=['10.240.10.5','10.232.10.5','10.200.10.5','10.200.10.6','10.232.10.6','10.240.10.6','10.200.10.7','10.200.10.7']

for i in ips:
        sessionFile = 'sdee_sid_' . i[0] . '.data'
        f = open(sessionFile, r)
        subscription = f.read()

我收到sessionFile变量的错误......

File "closeallSDEEsession.py", line 8
    sessionFile = "sdee_sid_" . i[0] . ".data"
                                             ^

3 个答案:

答案 0 :(得分:6)

python中没有字符串连接运算符,只需使用+

'sdee_sid_' + i + '.data'

printf-like string formatting

'sdee_sid_%s.data' % i

new-style string formatting

'sdee_sid_{}.data'.format(i)

请注意,i[0]i的第一个字符,可能不是您想要的字符。

答案 1 :(得分:3)

此:

sessionFile = 'sdee_sid_' . i[0] . '.data'

应该是:

sessionFile = 'sdee_sid_' + i[0] + '.data'

答案 2 :(得分:2)

更改

sessionFile = 'sdee_sid_' . i[0] . '.data'

sessionFile = 'sdee_sid_%s.data' % i[0]

我还认为您需要i而不是i[0],因为后者是您要迭代的列表中当前字符串的第一个字符。