# 如何把2274587.84如何快速的转换为大写：贰佰贰拾柒万肆仟伍佰捌拾柒元捌角肆分？（番外篇）

### 二、实现过程

``````def number_to_chinese(num):
chinese_units = ['', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟', '万']
chinese_nums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']

num_str = str(round(num, 2))  # 将数字转换为字符串，并保留两位小数
integer_part, decimal_part = num_str.split('.')  # 拆分整数和小数部分

result = '元'
# 处理整数部分
for i, digit in enumerate(integer_part[::-1]):
result = chinese_units[i] + result
result = chinese_nums[int(digit)] + result

# 处理小数部分
if decimal_part == '00':
result += '整'
else:
if decimal_part[0] != '0':
result += chinese_nums[int(decimal_part[0])] + '角'
if decimal_part[1] != '0':
result += chinese_nums[int(decimal_part[1])] + '分'

return result

# amount = 2274587.84
amount = 22745.00
chinese_amount = number_to_chinese(amount)
print(chinese_amount)
``````

``````def number_to_chinese(num):
chinese_units = ['', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟', '万']
chinese_nums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']

num_str = str(round(num, 2))  # 将数字转换为字符串，并保留两位小数
integer_part, decimal_part = num_str.split('.')  # 拆分整数和小数部分

result = '元'
# 处理整数部分
for i, digit in enumerate(integer_part[::-1]):
result = chinese_units[i] + result
result = chinese_nums[int(digit)] + result

# 处理小数部分
if decimal_part == '00':
result += '整'
else:
if decimal_part[0] != '0':
result += chinese_nums[int(decimal_part[0])] + '角'
if decimal_part[1] != '0':
result += chinese_nums[int(decimal_part[1])] + '分'

return result

amount = float(input("请输入待转换的数值："))
chinese_amount = number_to_chinese(amount)
print(chinese_amount)
``````

``````def number_to_chinese(num):
chinese_units = ['', '拾', '佰', '仟', '万', '拾', '佰', '仟', '亿', '拾', '佰', '仟', '万']
chinese_nums = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']

num_str = str(round(num, 2))  # 将数字转换为字符串，并保留两位小数
integer_part, decimal_part = num_str.split('.')  # 拆分整数和小数部分

result = '元'
# 处理整数部分
for i, digit in enumerate(integer_part[::-1]):
result = chinese_units[i] + result
result = chinese_nums[int(digit)] + result

return result

# amount = 2274587.84
amount = 22745.00
chinese_amount = number_to_chinese(amount)
print(chinese_amount)
``````

### 三、总结

【提问补充】温馨提示，大家在群里提问的时候。可以注意下面几点：如果涉及到大文件数据，可以数据脱敏后，发点demo数据来（小文件的意思），然后贴点代码（可以复制的那种），记得发报错截图（截全）。代码不多的话，直接发代码文字即可，代码超过50行这样的话，发个.py文件就行。

TA 点赞

23

120

• 推荐
• 评论
• 收藏
• 共同学习，写下你的评论

100积分直接送

0/150