8

私はPythonにかなり慣れていないので、いくつかの簡単なコードを試してみています。ただし、プラクティスの1つでは、私のコードは左側にインチ単位の数値を表示し、右側に数値の変換を表示することになっています。

count = 1
conv = count * 2.54
print count, conv

出力を間にスペースを空けて印刷したい。

count = 1
conv = count * 2.54
print count,     conv

これを行う方法がわかりません。私はどこでも検索しましたが、私が見つけることができるのは、スペースを取り除こうとしている人々だけです。誰かが私を正しい方向に導くことができれば、私は感謝するでしょう。

ああ、私は3.xではなくPython2.7を使用していることに気づきました。これが重要かどうかわからない。

4

11 に答える 11

10

簡単な方法は次のとおりです。

print str(count) + '  ' + str(conv)

さらにスペースが必要な場合は、文字列にスペースを追加するだけです。

print str(count) + '    ' + str(conv)

文字列のフォーマットに新しい構文を使用する、より洗練された方法:

print '{0}  {1}'.format(count, conv)

または、古い構文を使用して、小数点以下の桁数を2つに制限します。

print '%d  %.2f' % (count, conv)
于 2012-04-02T00:45:20.023 に答える
4

代わりに文字列補間を使用してください。

print '%d   %f' % (count,conv)
于 2012-04-02T00:45:54.003 に答える
3

または、 ljust / rjustを使用して、フォーマットをより適切にすることができます。

print "%s%s" % (str(count).rjust(10), conv)

また

print str(count).ljust(10), conv
于 2012-04-02T01:32:46.930 に答える
2

簡単な警告、これはかなり言葉の多い答えです。

印刷は時々トリッキーです、私が最初に始めたとき、私はそれに関していくつかの問題を抱えていました。正しく印刷した後、2つの変数の間にいくつかのスペースが必要ですか?上記の回答に示されているように、これを行うには多くの方法があります。

これはあなたのコードです:

count = 1
conv = count * 2.54
print count, conv

出力は次のとおりです。

1 2.54

間にスペースが必要な場合は、間にスペースの文字列を貼り付けることで、単純な方法でそれを行うことができます。変数countとconvは、それらを連結(結合)するために文字列型に変換する必要があります。これはstr()で行われます。

print (str(count) + "           " + str(conv))
### Provides an output of:
1           2.54

これを行うには、より新しく、よりPython的な方法で、%記号を文字と組み合わせて使用​​して、使用している値の種類を示します。ここでは、スペースの代わりにアンダースコアを使用して、いくつあるかを示しています。最後の値の前のモジュロは、Pythonに次の値を指定した順序で挿入するように指示します。

print ('%i____%s' % (count, conv))
### provides an output of:
1____2.54

整数であるためカウントに%iを使用し、コンバージョンに%sを使用しました。その場合、%iを使用すると、「2.54」ではなく「2」が提供されるためです。技術的には、両方の%sを使用できましたが、大丈夫だよー。

これがお役に立てば幸いです。

-ジョセフ

PSフォーマットを複雑にしたい場合は、辞書やタプルリスト(pprintとしてインポート)などの大量のテキストのprettyprintを確認する必要があります。また、自動タブ、間隔、その他のクールなジャンクも確認する必要があります。

Pythonドキュメントの文字列に関する詳細情報は次のとおりです。 http://docs.python.org/library/string.html#module-string

于 2012-04-02T03:42:04.210 に答える
2

Python3ではこのように行うことができます。

print(a, b, sep=" ")
于 2019-09-14T04:21:48.603 に答える
1

これは愚かな/ハッキーな方法です

print count,    
print conv
于 2012-04-02T01:28:27.213 に答える
1

変数を保存せずに印刷するだけの場合。以下のように、関数でsep=パラメーターを使用できます。print()

print("string", "string", sep="something between them")
space_num = 10

count = 1
conv = count * 2.54
print(count, conv, sep=" "*space_num)

f値を1つの変数として格納する場合は、次のように文字列を使用するのが最適だと思います。

space_num = 10

count = 1
conv = count * 2.54

result = f"{count}{' ' * space_num}{conv}"
print(result)
于 2021-12-22T12:45:40.743 に答える
0

print str(count) + ' ' + str(conv)-これは機能しませんでした。しかし、私のため+に作品に置き換える,

于 2016-08-25T22:48:52.507 に答える
0

Pythonの明示的な変換フラグPEP-3101を使用する必要があります

'My name is {0!s:10} {1}'.format('Dunkin', 'Donuts')

'My name is Dunkin Donuts'

また

'My name is %-10s %s' % ('Dunkin', 'Donuts')

'My name is Dunkin Donuts'

https://www.python.org/dev/peps/pep-3101/

于 2016-10-28T21:50:27.683 に答える
0

タブを追加する簡単な方法は、\tタグを使用することです。

print '{0} \t {1}'.format(count, conv)
于 2019-07-22T14:48:06.580 に答える
0
print( "hello " +k+ "  " +ln);

ここでklnは変数です

于 2020-04-04T10:41:13.993 に答える