当前位置: 首页 > wzjs >正文

做网站的公司哪家好最近国际新闻

做网站的公司哪家好,最近国际新闻,开网店货源怎么弄,鞍山做网站公司文章目录 1. 引言2. 需求分析‌3. 核心实现思路‌4. 完整代码实现‌ 1. 引言 在中文文本处理和自然语言处理(NLP)应用中,经常需要将中文数字转换为阿拉伯数字。本文将介绍如何使用Python根据用户从控制台输入的数字范围,生成相应的中文数字到阿拉伯数字…

文章目录

  • 1. 引言
  • 2. 需求分析‌
  • 3. 核心实现思路‌
  • 4. 完整代码实现‌

1. 引言

在中文文本处理和自然语言处理(NLP)应用中,经常需要将中文数字转换为阿拉伯数字。本文将介绍如何使用Python根据用户从控制台输入的数字范围,生成相应的中文数字到阿拉伯数字的映射字典,并将结果保存为JSON文件。

2. 需求分析‌

开发一个Python程序,根据用户输入的数字(最大9999),自动生成中文数字与阿拉伯数字的映射字典,并保存为JSON文件。例如:输入10时,生成{“零”:0, “一”:1,…, “十”:10}。

3. 核心实现思路‌

1. 中文数字转换规则‌

  • 单位系统‌:万(超过9999的部分)、千、百、十、个位。
  • 零处理‌:连续零仅保留一个(如205→“二百零五”),末尾零省略(如100→“一百”)。
  • 特殊读法‌:10读作“十”而非“一十”。

2. 用户输入验证‌

  • 确保输入为整数、且在0~9999之间。

3. JSON文件生成‌

  • 使用Python标准库json保存字典,保留Unicode字符。

4. 完整代码实现‌

import jsondef number_to_chinese(num):"""将0-9999的整数转换为中文数字"""units = ['', '十', '百', '千']digits = {0: '零', 1: '一', 2: '二', 3: '三', 4: '四',5: '五', 6: '六', 7: '七', 8: '八', 9: '九'}if num == 0:return digits[0]num_str = str(num)length = len(num_str)result = []has_zero = False  # 标记前一位是否是零for i, n in enumerate(num_str):n = int(n)pos = length - i - 1  # 当前位数(0=个位,1=十位...if n == 0:if not has_zero and pos != 0:result.append(digits[0])has_zero = Trueelse:if has_zero:result.pop()  # 删除前导零has_zero = Falseresult.append(digits[n])if pos > 0:result.append(units[pos])# 处理10-19的特殊情况(如10→十,11→十一)if 10 <= num <= 19 and length == 2:result = result[1:] if num == 10 else ['十' + digits[int(num_str[1])]]return ''.join(result).replace('零千', '零').rstrip('零')def validate_input(prompt):"""验证用户输入是否为0-9999的整数"""while True:user_input = input(prompt)try:num = int(user_input)if 0 <= num <= 9999:return numprint("错误:请输入0到9999之间的整数!")except ValueError:print("错误:输入必须为整数!")def generate_mapping(max_num):"""生成中文数字映射字典"""return {number_to_chinese(i): i for i in range(max_num + 1)}def main():max_num = validate_input("请输入最大阿拉伯数字(0-9999): ")mapping = generate_mapping(max_num)# 保存为JSON文件filename = f"chinese_numbers_{max_num}.json"with open(filename, 'w', encoding='utf-8') as f:json.dump(mapping, f, ensure_ascii=False, indent=2)print(f"生成成功!映射文件已保存为 {filename}")# 读取JSON文件with open(filename, 'r', encoding='utf-8') as f:loaded_dict = json.load(f)print("成功读取字典:", loaded_dict)if __name__ == "__main__":main()

关键代码解析‌

1. 数字转换函数‌

  • 动态单位拼接‌:根据数字位置添加“千、百、十”等单位。
  • 零处理优化‌:通过has_zero标志避免重复零,如2001→“二千零一”。
  • 边界特判‌:单独处理10-19的读法,确保符合中文习惯。

2. 输入验证‌

  • 使用循环强制用户输入合法数值,防止程序崩溃。

3. 文件输出‌

  • ensure_ascii=False确保JSON文件直接显示中文而非Unicode转义。

运行示例‌

1. 输入验证‌

请输入最大阿拉伯数字(0-9999: abc
错误:输入必须为整数!
请输入最大阿拉伯数字(0-9999: 10000
错误:请输入09999之间的整数!

2. 生成结果‌,输入10时,输出文件内容:

{"零": 0,"一": 1,"二": 2,"三": 3,"四": 4,"五": 5,"六": 6,"七": 7,"八": 8,"九": 9,"十": 10
}

输入9999运行结果:

在这里插入图片描述

http://www.dtcms.com/wzjs/299223.html

相关文章:

  • 亿网中国网站管理系统搜索引擎网站推广如何优化
  • 做网站搞流量关键词优化话术
  • 怎么做时时彩彩票网站如何让网站被百度收录
  • 手机网站建设渠道免费入驻的跨境电商平台
  • 风格网站建设全面网络推广营销策划
  • 南京网站高端流量网站
  • 网站建设技术标书洛阳网站seo
  • 做网站1核1g服务器够吗网络公司是做什么的
  • 百度推广技巧页面优化的方法
  • 网站建设测试流程合肥网站seo公司
  • 代做网站在哪找活深圳seo优化外包公司
  • 深圳做网站哪家好网站优化网络推广seo
  • 广告中国西安seo外包服务
  • 中国e网网站建设排名优化工具下载
  • 日照东港建设局网站百度一下官方入口
  • 网站备案证书安装杭州网站建设公司
  • 呼伦贝尔网站建设网站内容优化关键词布局
  • 电商网站如何做c2b河南智能seo快速排名软件
  • 童装网站建设目标深圳网站制作推广
  • wordpress 迁移上线seo技术培训岳阳
  • 北京网站建设明细最佳bt磁力猫
  • 宁波h5模板建站福州seo技术培训
  • 行政单位网站信息建设政策seo网络优化是什么意思
  • 搭建网站本地测试环境深圳网站优化推广
  • 网站建设用啥技术seo怎么做排名
  • php做网站最容易广州seo网络培训课程
  • 上海装修公司网站建设seo排名软件
  • 网站推广计划怎么写蚂蚁链接bt链接
  • 做修图网站电脑配置搜索引擎分哪三类
  • wordpress 扩展网站优化策划书