python阿拉伯数字转中文实现代码
时间: 2024-10-07 14:05:29 浏览: 33
python中将阿拉伯数字转换成中文的实现代码
Python 中将阿拉伯数字转换成中文数字,通常需要借助于特定的库,如 `num2chinese` 或者自定义函数。这里是一个简单的例子,使用了内置的字符串处理:
```python
def arabic_to_chinese(num):
digit_map = {
'0': '零', '1': '一', '2': '二', '3': '三', '4': '四',
'5': '五', '6': '六', '7': '七', '8': '八', '9': '九'
}
unit_map = {
'': '', '十': '十', '百': '百', '千': '千', '万': '万',
'亿': '亿', '万亿': '万亿'
}
def convert(num, unit=''):
if num == 0:
return digit_map[num]
else:
return f'{digit_map[num]}{unit_map[unit]}'
result = ''
for i in range(len(str(abs(num)))[::-1]):
result = convert(int(str(num)[i]), unit=''.join(['十', '百', '千', '万', '亿', '万亿'][i::3]))
# 如果数是负数,则添加“负”字
if num < 0:
result = '负' + result
return result
# 示例
print(arabic_to_chinese(123456789)) # 输出:一亿两千三百四十五万六千七百八十九
```
这个函数会先定义一个映射表,然后通过循环处理每一位数字,并根据位值添加对应的单位。如果输入的是负数,还会在结果前面加上“负”。
阅读全文