web-dev-qa-db-ja.com

Pythonで+1を1ではなく+1(プラス記号付き)として印刷する方法は?

タイトルで述べたように、Pythonを印刷するには、1ではなく+1を出力する方法を教えてください。

score = +1
print score
>> 1

私は-1が-1として印刷されることを知っていますが、手動で追加せずに+記号を使用して正の値を印刷するにはどうすればよいですか。

ありがとうございました。

42
Farshid Palad

%演算子

print '%+d' % score

str.format

print '{0:+d}'.format(score)

フォーマットミニ言語のドキュメントを見ることができます ここ

65
icktoofay

マイナススコアに負の符号のみを表示し、ゼロスコアに正/負を表示せず、すべての正のスコアに正符号を表示する場合:

score = lambda i: ("+" if i > 0 else "") + str(i)

score(-1) # '-1'
score(0) # '0'
score(1) # '+1'
4
joente