我在打印变量时总是得到一个框

2024-05-15 04:54:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图打印变量c,但每次打印时,我都会得到“电力成本:$□". 但是如果我用print(c)打印变量c,我会得到“6.122448979591836”。所以它一定是关于用%替换变量,对吗?顺便说一句,我使用的是Python3.5.2。我还需要显示的数字是6.12,而使用round(c,2)什么都不做。是不是因为它不是int

# print #100 Cost of Electricity
print("#100 Cost of Electricity")
# get wattage
w = int(input("Enter wattage: "))
# get hours used
h = int(input("Enter number of hours used: "))
# get price per/kWh
p = float(input("Enter price per kWh in cents: "))
# calculate cost
c = w*h/(1000*p)
# print price
print("Cost of electricity: $%c" % int(c))

这已经不重要了,但我明白为什么我会如此困惑。我没有使用%c,因为它是基于ASCII值显示的。我认为我必须输入%c,因为我认为我必须输入%(变量名)。我忘记了您通常使用的是%s或%r,并且变量名稍后会出现。我有一本关于Python 2的旧书说%r用于显示原始数据,%s用于向用户显示


Tags: ofinputgetpriceusedintkwhelectricity

热门问题