返回顶部
首页 > 资讯 > 后端开发 > 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://lsjlt.com/news/193446.html(转载时请注明来源链接)

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

猜你喜欢
  • 【python3】将小于亿的正整数转为
    项目需要,将一些整数转为汉字字符串,搜索了一下大家基本都是自己写一下函数转换,参考了帖子:https://blog.csdn.net/PlusCha...;在其中速度最快的第三种程序的基础上,自己做了一些改进,让代码更精简并且更快一些。 ...
    99+
    2023-01-31
    正整数
  • javascript如何将整数转为小数
    本篇内容主要讲解“javascript如何将整数转为小数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript如何将整数转为小数”吧! ...
    99+
    2024-04-02
  • javascript如何将小数转换为整数
    这篇文章主要为大家展示了“javascript如何将小数转换为整数”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript如何将小数转换为整数”这篇文...
    99+
    2024-04-02
  • 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
  • 将 firestore“integer_value”转换为整数
    问题内容 使用 golang firestore 1.8 库,我尝试使用 google 去年秋天推出的 firestore 的新 count() 函数。这些文档似乎还没有示例,不是我发...
    99+
    2024-02-06
  • javascript将小数转成整数的方法
    这篇文章给大家分享的是有关javascript将小数转成整数的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。javascript将小数转成整数的方法:首先新建文件,并使用input标签创建数字输入框;然后设置...
    99+
    2023-06-14
  • php怎么将值转为整数
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php将值转为整数1、在值之前加上“(int)”或“(integer)”<php $str = '123.456abc'; $int = (int...
    99+
    2019-02-10
    php 整数
  • php如何将值转为整数
    本篇内容主要讲解“php如何将值转为整数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何将值转为整数”吧!方法:1、在值之前加上“(int)”或“(integer)”,例“3.14(in...
    99+
    2023-06-29
  • php小数如何转为整数
    这篇文章将为大家详细讲解有关php小数如何转为整数,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。方法:1、使用floor()函数向下舍入为最接近的整数,语法“floor (小数)”;2、使用ceil()函...
    99+
    2023-06-15
  • php怎么把负数转为正整数
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php把负数转为正整数的方法方法1:使用abs()和intval()函数abs()函数将负数转为正数intval()函数对正数取整,转为正整数实现代码:<php ...
    99+
    2020-07-18
    php
  • php如何把负数转为正整数
    本篇内容主要讲解“php如何把负数转为正整数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何把负数转为正整数”吧!php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用...
    99+
    2023-06-30
  • php如何将正数转换为负数
    本篇内容介绍了“php如何将正数转换为负数”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php将正数转为负数的方法:1、定义一个正数变量并赋...
    99+
    2023-07-04
  • php怎么将正数转换为负数
    php将正数转为负数的方法:1、定义一个正数变量并赋值“$num=正数值;”,使用乘法运算符“*”将正数和“-1”相乘即可,语法“$num=$num* (-1)”。2、定义一个正数变量并赋值“$num=正数值;”,使用乘赋值运算符“*=”将...
    99+
    2023-05-14
    php
  • javascript如何将数据转换为整数
    这篇文章主要介绍“javascript如何将数据转换为整数”,在日常操作中,相信很多人在javascript如何将数据转换为整数问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • javascript如何将浮点数转为整数
    本篇内容主要讲解“javascript如何将浮点数转为整数”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript如何将浮点数转为整数”吧! ...
    99+
    2024-04-02
  • php如何将值转为整数型
    这篇文章主要介绍了php如何将值转为整数型的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何将值转为整数型文章都会有所收获,下面我们一起来看看吧。3种转换方法:1、使用intval()函数,可获取变量的整...
    99+
    2023-07-04
  • php怎么将值转为整数型
    3种转换方法:1、使用intval()函数,可获取变量的整数值,语法“intval($var)”;2、使用settype()函数,可将变量值设置为整数型,语法“settype($var,'integer')”;3、在数据之前...
    99+
    2023-05-14
    php
  • python 如何将带小数的浮点型字符串转换为整数
    以下内容在python中完全可以接受: 将整数的字符串表示形式传递给 int 将float的字符串表示形式传递给 float 但是,如果你将float型的字符串传递给int将会得到错误。 >>>...
    99+
    2022-06-02
    python 带小数 浮点型字符串 转换整数
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作