Python中浮点数傻傻分不清
请问各位大神鱼油:1.虽然我知道Python中的小数以浮点数的形式存在,但为什么程序运行结果中,有些小数只保留一位或两位小数,而有些明明可以只保留两位小数,却现实那么长的位数?
2.怎么让运行结果中的小数保留同样的位数?
运行结果如下:
Rmc_A_1(万元): 90.0
Rcc_A_1(万元): 2.0
R_A_1(万元): 92.0
L1_av(MW): 900.0
LA_1_av(MW): 9.0
RA_1(万元): 0.92
Rbc(万元): 0.5999999999999979
Rb(万元): 0.04999999999999982
Ri_s_mon(万元):-0.75
Rh_r_mon(万元):0.75
RA_1_s(万元):91.2
RA_1_r(万元):-0.12000000000000022
程序如下:
#电厂收益
Lj=10 #系统负荷10GW
L1=1 #A电厂1月最高负荷1GW
Rmc=9000 #主容量市场总收益9000W
Rcc=100 #补充容量市场总收益100W
Rmc_1=L1/Lj*9000 #运营机构在主容量市场1月的购买费用
Rcc_1=L1/Lj*100 #运营机构在补充容量市场1月的购买费用
Rmc_A_1=0.1*Rmc_1 #发电企业1月在主容量市场获得的容量收益
Rcc_A_1=0.2*Rcc_1 #发电企业1月在补充容量市场获得的容量收益
R_A_1=Rmc_A_1+Rcc_A_1 #发电企业1月在容量市场获得的容量收益
print("Rmc_A_1(万元):",Rmc_A_1)
print("Rcc_A_1(万元):",Rcc_A_1)
print("R_A_1(万元):",R_A_1)
#售电公司或用户购买费用
L1_1,L1_2,L1_3=1,0.9,0.8 #1月中系统负荷最高三天的峰值负荷
LA_1_1,LA_1_2,LA_1_3=9.5,9.0,8.5 #1月中大用户A该三天的用电负荷
R1=Rmc_1+Rcc_1 #1月的容量市场收益
L1_av=(L1_1+L1_2+L1_3)/3 *1000 #1月系统负荷最高三天的平均负荷
LA_1_av=(LA_1_1+LA_1_2+LA_1_3) /3 #用户A在1月系统峰值的三天中对应时刻的平均负荷
RA_1=LA_1_av/L1_av*R_A_1 #用户A1月分摊的容量市场费用
print("L1_av(MW):",L1_av)
print("LA_1_av(MW):",LA_1_av)
print("RA_1(万元):",RA_1)
#场外双边协商市场结算
Pb_con=9.0
Qb_con=60*1000
Pmark=9.1
if Pmark <= Pb_con:
Rbp=(Pb_con-Pmark)*Qb_con/10000 #电厂在双边协商交易的收益
Rb=Rbp
Rbp_1=Rbp/12
Rbc_1=-Rb/12
print("Rbp(万元):",Rbp)
else:
Rbc=(Pmark-Pb_con)*Qb_con/10000 #用户在双边协商交易的收益
Rb=Rbc
Rbc_1=Rb/12
Rbp_1=-Rb/12
print("Rbc(万元):",Rbc)
Rb_mon=Rb/12 #双边协商交易的收益
print("Rb(万元):",Rb_mon)
#容量权转让市场收益结算
Ph_r=Pi_s=9
Qh_r=Qi_s=10*1000
Ri_s=-Pi_s*Qi_s
Rh_r=Ph_r*Qh_r
Ri_s_mon=Ri_s/12/10000
Rh_r_mon=Rh_r/12/10000
print("Ri_s_mon(万元):",Ri_s_mon,sep='')
print("Rh_r_mon(万元):",Rh_r_mon,sep='')
#各电厂和用户的容量市场总收益/费用
RA_1_s=R_A_1+Rbp_1+Ri_s_mon
RA_1_r=-RA_1+Rbc_1+Rh_r_mon
print("RA_1_s(万元):",RA_1_s,sep="")
print("RA_1_r(万元):",RA_1_r,sep="")
用round函数保留小数位{:10_243:}
round(x, 3)
# x: 浮点数
# 3: 保留小数位数 https://www.jb51.net/article/207664.htm 快速收敛 发表于 2021-11-22 10:19
用round函数保留小数位
请问为什么同样的做法,有些小数就只保留两位呢,也没有后面跟一堆 MildHeart 发表于 2021-11-22 14:16
请问为什么同样的做法,有些小数就只保留两位呢,也没有后面跟一堆
不知道喔,但是除法结果都是浮点,可能刚好整除,python内部机制优化了输出结果{:10_254:} 快速收敛 发表于 2021-11-22 16:29
不知道喔,但是除法结果都是浮点,可能刚好整除,python内部机制优化了输出结果
谢谢亲爱的鱼友~
页:
[1]