[英]Formatting decimal places
我有一個創建一個類來添加復數的賦值,我讓程序完全不同於小數位格式,教師給出的預期輸出文件在小數點后面有6個位置,我的輸出給出兩個。
class ComplexNumber:
def __init__(self, R, I):
self.R, self.I = R, I
def add(self, other):
self.R = self.R + other.R
self.I = self.I + other.I
return ComplexNumber(self.R, self.I)
def __str__(self):
OutStr = str(self.R)
OutStr += ' + '
OutStr += str(self.I)
OutStr += ' * '
OutStr += 'i'
return str(OutStr)
InputFile = open('input.txt')
OutFile = open('output.txt', 'w')
for lines in InputFile.readlines():
values = [float(i) for i in lines.split()]
N_1 = ComplexNumber(values[0], values[1])
N_2 = ComplexNumber(values[2], values[3])
N_3 = ComplexNumber.add(N_1, N_2)
print(N_3)
這個怎么樣?
def __str__(self):
return f'{self.R:.6g} + {self.I} * i'
說明:
{0}
告訴format打印第一個參數。
冒號后面的所有內容都指定了format_spec。
.6
將精度設置為6。
g
刪除無效的零
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.