You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python编写for循环计算不同单元数的租金与利润?

修正后的代码及问题说明

先看你给出的初始代码,存在几个关键问题,以下是修正后的正确代码:

# 定义用户输入的参数(示例值)
initial_units = 50
base_rent = 600
rent_increase = 30
maintenance_cost = 37

# 打印表头,仅需输出一次
print(f'{"出租单元数":<10} {"当前租金":<10} {"利润":<10}')

# 从初始单元数递减遍历到1
for unit in range(initial_units, 0, -1):
    # 计算当前单元数对应的租金:每少租1个单元,租金涨一次
    current_rent = base_rent + (initial_units - unit) * rent_increase
    # 代入公式计算利润,用当前租金而非初始租金
    profit = unit * (current_rent - maintenance_cost)
    # 格式化输出,保证排版对齐
    print(f'{unit:<10} {current_rent:<10} {profit:<10}')

原代码的核心问题:

  • 租金逻辑错误:原代码每次循环只给租金加一次涨幅,实际逻辑应为「每减少1个出租单元,租金上涨一次」,比如从50降到49时租金涨30,降到48时再涨30,需要用初始单元数减当前单元数得到涨价次数,再乘以涨幅。
  • 表头重复输出:原代码把表头放在循环内部,导致每输出一行数据就打印一次表头,应该移到循环外部。
  • 利润计算错误:原代码用初始租金计算利润,而非每次调整后的当前租金,结果完全不符合需求。
  • 变量名不一致:increase_Rent和输入参数increase_rent大小写不统一,容易引发语法错误。

示例输出(用题目给定参数):

出租单元数   当前租金    利润    
50          600        28150     
49          630        28927     
48          660        29568     
...
1           2070       2033      

内容的提问来源于stack exchange,提问作者Processing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 08:30:57