python 输入人民币金额(5位数以内),输出其大写金额。如输入1234,输出壹仟贰佰叁拾肆
时间: 2024-10-22 17:28:55 浏览: 20
Python之输出和输入共5页.pdf.zip
在Python中,我们可以编写一个简单的函数来将数字转换为中文的大写金额表示。这里是一个例子:
```python
def yuan_to_chinese(num):
digit_map = {
'0': '零',
'1': '壹',
'2': '贰',
'3': '叁',
'4': '肆',
'5': '伍',
'6': '陆',
'7': '柒',
'8': '捌',
'9': '玖'
}
unit_map = {
1: '',
2: '拾',
3: '佰',
4: '仟',
5: '万',
6: '拾',
7: '佰',
8: '仟',
9: '亿'
}
def helper(n, pos=0):
if n == 0:
return ''
result = unit_map[pos] + digit_map[str(n % 10)]
if n >= 10 and pos < 4:
result += helper(n // 10, pos + 1)
return result
num_str = str(abs(int(num)))
negative = '-' if num < 0 else ''
result = negative + helper(int(num_str))
return result
# 示例
input_amount = input("请输入5位数以内的人民币金额:")
output_amount = yuan_to_chinese(input_amount)
print(output_amount)
```
这个函数首先定义了数字和单位的映射表,然后用递归的方式处理每一位的转换,最后根据正负号返回结果。
阅读全文