-4

私はここで何が間違っているのだろうか.. 問題はこの行です *final = 'PAT_' SID '.txt'* where SID is a variable

以下は完全なコードです...

#!/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)
4

2 に答える 2

3

+変数を連結するには、変数を追加 ( ) する必要があります。

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

str.format()ここで組み込み関数を使用することもできます。

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

または、Python 3 と互換性がある古い方法の文字列フォーマットを使用することもできます (ただしstr.format、使用する方がはるかに優れています)。

final = 'PAT_ %s .txt' % SID

ところで、グローバル ステートメントは必要ありません。withステートメントは新しいスコープを導入しないため、 with ステートメントで定義されたものはすべてグローバル変数です。

于 2013-08-21T22:05:09.377 に答える
0

+Pythonで文字列を連結するために使用します

于 2013-08-21T22:05:34.630 に答える