在Python中将变量与变量和文本组合在一起

时间:2013-08-21 22:04:12

标签: python

我想知道我在这里做错了什么.. 问题是这一行* final ='PAT_'SID'.txt'* 其中SID是一个变量 任何人都可以快速查看,我确信我做的事情很愚蠢。

以下是完整的代码......

#!/usr/bin/env python
import os
global SID
global final
with open ('sampleID.txt', 'r') as inF:
    for line in inF:
        if 'Sample ID:' in line:

           SID = line.split(':')[1]
           final = 'PAT_' SID '.txt'
           os.rename("sampleID.txt",final)

2 个答案:

答案 0 :(得分:3)

要连接变量,您需要添加(+)它们:

final = 'PAT_' + SID + '.txt'

您也可以在此处使用内置函数str.format()

final = 'PAT_ {} .txt'.format(SID)

甚至旧的字符串格式化方式,在Python 3中仍然兼容(但str.format更好用):

final = 'PAT_ %s .txt' % SID

顺便说一下,不需要你的全局声明。 with语句不会引入新范围,因此在with语句中定义的所有内容都是全局变量。

答案 1 :(得分:0)

使用+在python中连接字符串