广告
返回顶部
首页 > 资讯 > 后端开发 > Python >【python3】将小于亿的正整数转为
  • 136
分享到

【python3】将小于亿的正整数转为

正整数 2023-01-31 08:01:40 136人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

项目需要,将一些整数转为汉字字符串,搜索了一下大家基本都是自己写一下函数转换,参考了帖子:https://blog.csdn.net/PlusCha...;在其中速度最快的第三种程序的基础上,自己做了一些改进,让代码更精简并且更快一些。

项目需要,将一些整数转为汉字字符串,搜索了一下大家基本都是自己写一下函数转换,参考了帖子:https://blog.csdn.net/PlusCha...;在其中速度最快的第三种程序的基础上,自己做了一些改进,让代码更精简并且更快一些。

基本思想还是先将整数字符串化后转为列表,然后进行汉字字符的替换。再根据汉语语法结构加上单位,以及把多余的零和一(例如“一十二”中的“一”)去掉。代码如下:

# 亿位以下的自然数
def num2Chinese(d):
    if 100000000 > d > 0:
        num = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']
        kin = ['十', '百', '千', '万']
        num_str = list(str(d))
        num_str.reverse()
        Chinese_str = ""
        for index, i in enumerate(num_str):
            if index!=0:
                if i != "0":
                    Chinese_str = num[int(i)] + kin[(index%4)-1] + Chinese_str
                elif Chinese_str:
                    if index==4 :
                        if Chinese_str[0]!="零":
                            Chinese_str = kin[3] + "零" + Chinese_str
                        else:
                            Chinese_str = kin[3] + Chinese_str
                    if not(Chinese_str[0] in ["零", "万"] and i=="0"):
                        Chinese_str = num[int(i)] + Chinese_str

            else:
                if i != "0":
                    Chinese_str = num[int(i)] + Chinese_str
        if Chinese_str[:2] == "一十":
            Chinese_str = Chinese_str[1:]
        return Chinese_str

GitHub地址:Https://github.com/Pengyiqing...

转换的过程思路如下:将数字列表化后倒置,即先从个位开始分析,个位上只需要考虑该位是否为零,为零则汉字字符无需声明。从十位开始,既要考虑加相应单位(好在亿以下的算是两次【十、百、千】的循环,可以合并判断,如果该位是【零】,根据已经生成的字符串的第一个是否是【零】要判断是否要加上。循环之间用【万】相连,【万】的情况就更复杂一些,因为【万】字前面不加零,所以再加单独判断即可。

在本人电脑上进行测试,参考例子里最快的那个代码,转化1至9999999的运行时间为73秒。而上面那个优化后的代码,运行时间为48秒。

--结束END--

本文标题: 【python3】将小于亿的正整数转为

本文链接: https://www.lsjlt.com/news/193446.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 【python3】将小于亿的正整数转为
    项目需要,将一些整数转为汉字字符串,搜索了一下大家基本都是自己写一下函数转换,参考了帖子:https://blog.csdn.net/PlusCha...;在其中速度最快的第三种程序的基础上,自己做了一些改进,让代码更精简并且更快一些。 ...
    99+
    2023-01-31
    正整数
  • javascript如何将整数转为小数
    本篇内容主要讲解“javascript如何将整数转为小数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript如何将整数转为小数”吧! ...
    99+
    2022-10-19
  • javascript如何将小数转换为整数
    这篇文章主要为大家展示了“javascript如何将小数转换为整数”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何将小数转换为整数”这篇文...
    99+
    2022-10-19
  • php怎么将int(整数)类型转为小数
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php将int(整数)类型转为小数方法1:使用number_format()函数number_format()可通过千位分组来格式化数字。<php echo nu...
    99+
    2021-07-10
    php int转小数
  • 怎么用php将一个小数转换为整数
    在PHP编程中,有时候需要将一个小数转换成整数。可能是为了方便计算,或者是为了更好地操作数据。本篇文章将向您介绍如何将一个小数转换成整数。在PHP中,有两个函数可以将小数转换成整数:intval()和floor()。下面分别介绍这两个函数的...
    99+
    2023-05-14
    php
  • 如何用php将一个小数转换为整数
    本篇内容介绍了“如何用php将一个小数转换为整数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在PHP中,有两个函数可以将小数转换成整数:i...
    99+
    2023-07-05
  • javascript将小数转成整数的方法
    这篇文章给大家分享的是有关javascript将小数转成整数的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。javascript将小数转成整数的方法:首先新建文件,并使用input标签创建数字输入框;然后设置...
    99+
    2023-06-14
  • python 如何将带小数的浮点型字符串转换为整数
    以下内容在python中完全可以接受: 将整数的字符串表示形式传递给 int 将float的字符串表示形式传递给 float 但是,如果你将float型的字符串传递给int将会得到错误。 >>>...
    99+
    2022-06-02
    python 带小数 浮点型字符串 转换整数
  • 怎么用vbs将名称转换为正确的大小写
    这篇文章主要介绍“怎么用vbs将名称转换为正确的大小写”,在日常操作中,相信很多人在怎么用vbs将名称转换为正确的大小写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用vbs将名称转换为正确的大小写”的疑...
    99+
    2023-06-08
  • Python的bin()函数:将整数转换为二进制
    Python的bin()函数:将整数转换为二进制在Python编程中,经常会涉及到将整数转换为二进制的需求。而Python中的bin()函数正是一种快速、简单的方法来实现这一目标。bin()函数的基本语法是:b...
    99+
    2023-11-18
    二进制 bin() 整数转换
  • PHP中的implode()函数用于将数组转换为字符串
    PHP中的implode()函数用于将数组转换为字符串,是一种实用而方便的函数。它可以帮助我们在开发过程中将数组中的元素连接成字符串,适用于很多场景,比如数据库操作、文件写入、日志记录等。在使用implode()函数之前,我们需要先了解一下...
    99+
    2023-11-18
    PHP 数组 implode函数
  • 如何使用golang中的strconv.ParseInt函数将字符串转换为整数
    如何使用golang中的strconv.ParseInt函数将字符串转换为整数,需要具体代码示例在golang中,strconv包提供了一系列将字符串转换为其他类型的函数。其中,strconv.ParseInt函数用于将字符串转换为整数类型...
    99+
    2023-11-18
    Golang strconv ParseInt
  • 如何使用golang中的strconv.Atoi函数将字符串转换为整数
    如何使用golang中的strconv.Atoi函数将字符串转换为整数,需要具体代码示例在Golang中,strconv.Atoi函数是用来将字符串转换为整数的常用函数。该函数可以帮助我们将字符串中的数字部分提取出来,并转换为相应的整数类型...
    99+
    2023-11-18
    Golang strconv Atoi
  • C++实现将长整型数转换为字符串的示例代码
    C++实现将长整型数转换为字符串 #include <iostream> using namespace std; char *convertLongTo...
    99+
    2022-11-12
  • python使用lower函数将字符串中的大小字符转换为小写
    在python中使用lower()函数将字符串中大小字符转换为小写的方法lower:lower()函数的作用是转换字符串中所有大写字符为小写。lower()函数语法:str.lower()lower()函数使用方法:str = "HELLO...
    99+
    2022-10-04
  • PHP怎么将字符串类型的数字转化为真正的数字类型
    这篇文章主要介绍“PHP怎么将字符串类型的数字转化为真正的数字类型”,在日常操作中,相信很多人在PHP怎么将字符串类型的数字转化为真正的数字类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP怎么将字符串...
    99+
    2023-07-05
  • javascript如何将16进制的字符串转换为10进制整数hex
    这篇文章主要为大家展示了“javascript如何将16进制的字符串转换为10进制整数hex”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如...
    99+
    2022-10-19
  • 基于JS实现将JSON数据转换为TypeScript类型声明的工具
    目录一、实现的功能二、工具使用方法三、实现思路四、使用示例简单的JSON 数据输出对应简单的类型定义复杂的JSON 数据输出对应复杂类型定义五、具体实现代码六、写在最后在TypeSc...
    99+
    2023-05-14
    JS实现JSON转TypeScript类型声明 JS JSON转TypeScript类型声明 TypeScript类型声明
  • 基于JS怎么将JSON数据转换为TypeScript类型声明的工具
    这篇文章主要介绍“基于JS怎么将JSON数据转换为TypeScript类型声明的工具”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“基于JS怎么将JSON数据转换为TypeScript类型声明的工具”...
    99+
    2023-07-05
  • 基于Java解决华为机试实现整数与IP地址间的转换
    目录1.简述示例12.代码实现1.简述 描述: 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数。 举例:...
    99+
    2022-11-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作