if 1:
T1=300
P1=1
h1=462
s1=4.42
hf=29
sf=0.42
print("The inlet conditions to compressor are 1atm pressure & 300K")
Wi=(T1*(s1-sf))-(h1-hf)
P2= input("What is the final compression pressure? ")
T2= input("What is the final compression temperature? ")
h2= float(input("From graph, enthalpy at point 2 is "))
s2= float(input("From graph, entropy at point 2 is "))
y= float((h1-h2)/(h1-hf))
W= float((T1*(s1-s2))-(h1-h2))
Wf= float(W/y)
FOM= float(Wi/Wf)
print("")
print("Yield= %f") %(y)
print("Work reqd per unit mass of gas compressed= %f KJ/kg") %(W)
print("Work reqd per unit mass of gas liquified= %f KJ/kg") %(Wf)
print("Figure of Merit= %f") %(FOM)
压缩机的入口条件是1atm压力& 300K 什么是最终压缩压力? 20 什么是最终压缩温度? 300 从图中可以看出,点2处的焓为432 从图中,点2处的熵是2.74
收益率=%f Traceback(最近一次调用最后一次): 文件"",第19行,in 打印("收益率=%f")%(y) TypeError:%支持的操作数类型:' NoneType'并且'浮动'
答案 0 :(得分:1)
您应该在字符串上应用%
格式,但目前您正在None
上应用它(print
函数返回的值)。为了使你的代码有效,你应该这样做:
print("Yield= %f" % (y))
# ^ moved inside `(...)` of print
而不是:
print("Yield= %f") %(y)
答案 1 :(得分:1)
您的问题出现在代码的最后4行。这些语句中的每个表达式都需要括号()
。您无法在%
函数上应用print
,因为它会返回None
您的最后4行代码应该是
print(("Yield= %f") % (y))
print(("Work reqd per unit mass of gas compressed= %f KJ/kg") %(W))
print(("Work reqd per unit mass of gas liquified= %f KJ/kg") %(Wf))
print(("Figure of Merit= %f") %(FOM))