利用python做一个快递价格计算器,根据给出的各地区价格,输入地区和重量,输出所需价格
时间: 2024-03-24 09:40:25 浏览: 198
好的,这个问题很有趣,我可以帮你完成。首先,你需要有一个快递价格表,这个表里记录了各个地区的价格信息。可以用字典来表示价格表,如下所示:
```python
prices = {
"北京": {"首重": 10, "续重": 5},
"上海": {"首重": 12, "续重": 6},
"广州": {"首重": 8, "续重": 4},
# ... 其他城市的价格信息
}
```
这个字典中,键是城市名称,值是一个字典,包含了首重价格和续重价格。接下来,你可以编写一个函数来计算价格:
```python
def calculate_price(city, weight):
price_info = prices.get(city)
if not price_info:
return None # 如果输入的城市不在价格表中,返回 None
first_weight_price = price_info["首重"]
additional_weight_price = price_info["续重"]
if weight <= 1:
return first_weight_price
else:
return first_weight_price + additional_weight_price * (weight - 1)
```
这个函数接受两个参数:城市名称和重量。它首先从价格表中获取该城市的价格信息,如果找不到该城市,则返回 None。如果找到了城市信息,则根据重量计算价格。如果重量小于等于1kg,则只需要支付首重价格;否则,需要支付首重价格加上续重价格乘以超过1kg的部分重量。
你可以用以下代码测试这个函数:
```python
print(calculate_price("北京", 0.5)) # 应该输出 10
print(calculate_price("上海", 2)) # 应该输出 24
print(calculate_price("深圳", 1.5)) # 应该输出 None
```
希望这个程序能够帮助你完成你的需求。
阅读全文