Python 对数字的千分位处理方式

目录
  • 对数字的千分位处理
    • 法1
    • 法2
    • 法3
  • 格式化千分位数字
    • 2.7版本以上直接用format设置千分位分隔符
    • 正则实现

对数字的千分位处理

法1

>>> "{:,}".format(56381779049)
'56,381,779,049'
>>> "{:,}".format(56381779049.1)
'56,381,779,049.1'
>>>

法2

>>> import re
>>> subject = '1234567'
>>> result = re.sub(r"(?<=\d)(?=(?:\d\d\d)+$)", ",", subject)
>>> result
'1,234,567'

法3

>>> import re
>>> subject = '1234567'
>>> result = re.sub(r"(\d)(?=(\d\d\d)+(?!\d))", r"\1,", subject)
>>> result
'1,234,567'

格式化千分位数字

2.7版本以上直接用format设置千分位分隔符

Python 2.7 (r27:82500, Nov 23 2010, 18:07:12)
[GCC 4.1.2 20070115 (prerelease) (SUSE Linux)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> format(1234567890,',')
'1,234,567,890'
>>> 

正则实现

import re
def strConv(s):  
    s =  str(s)
    while True:
        (s,count) = re.subn(r"(\d)(\d{3})((:?,\d\d\d)*)$",r"\1,\2\3",s)
        if count == 0 : break
    return s
print strConv(12345)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python 数据类型中的字符串和数字

    目录 一.变量 1.变量 2.变量的命名规则 二.标准数据类型 1.字符串 字符串(string) 转义字符 修改字符串大小写 删除字符串空白 判断字符串全是字母或数字 字符串查找 字符串替换 2.数字(Number) 一.变量 1.变量 Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型. 等号(=)用来给变量赋值. 等号(=)运算符左边是一个变量

  • python DataFrame数据格式化(设置小数位数,百分比,千分位分隔符)

    目录 1.设置小数位数 1.1数据框设置统一小数位数 1.2数据框分别设置不同小数位数 1.3通过Series设置DataFrame小数位数 1.4applymap(自定义函数) 2.设置百分比 3.设置千分位分隔符 1.设置小数位数 1.1 数据框设置统一小数位数 以保留小数点后两位小数为例: import pandas as pd import numpy as np df = pd.DataFrame(np.random.random([5, 5]), columns=['A1', 'A2

  • python format格式化和数字格式化

    目录 1.format()基本用法 2.填充与对齐 3.数字格式化 1.format() 基本用法 python2.6 开始,新增了一种格式化字符串的函数str.format(), 它增强了字符串格式化的功能 基本语法是通过{} 和 : 来代替以前的 % . format 函数可以接受不限个参数,位置可以不按顺序. a = "姓名:{0},年龄:{1}" print(a.format("小明",18))   b = "姓名:{0},年龄:{1},{0}是个

  • Python 对数字的千分位处理方式

    目录 对数字的千分位处理 法1 法2 法3 格式化千分位数字 2.7版本以上直接用format设置千分位分隔符 正则实现 对数字的千分位处理 法1 >>> "{:,}".format(56381779049) '56,381,779,049' >>> "{:,}".format(56381779049.1) '56,381,779,049.1' >>> 法2 >>> import re >

  • JS实现数字格式千分位相互转换方法

    实例如下: /** * 数字格式转换成千分位 *@param{Object}num */ function commafy(num){ if((num+"").Trim()==""){ return""; } if(isNaN(num)){ return""; } num = num+""; if(/^.*\..*$/.test(num)){ varpointIndex =num.lastIndexOf(&

  • vue element-ui实现input输入框金额数字添加千分位

    在util.js中定义方法 包含金额添加过滤千分位,验证金额格式等 const MoneyTest = /((^[1-9]\d*)|^0)(\.\d{0,2}){0,1}$/; // 金额添加千分位 const comdify = function (n) { if(!n) return n; let str = n.split('.'); let re = /\d{1,3}(?=(\d{3})+$)/g; let n1 = str[0].replace(re, "$&,");

  • javascript实现将数字转成千分位的方法小结【5种方式】

    本文实例讲述了javascript实现将数字转成千分位的方法.分享给大家供大家参考,具体如下: 尽管离过年还有两个月之久,春运抢票的战斗已经打响了,悲剧的是我还没抢到票,看到某浏览器上的数字时,想到一个经典面试题,没错,就是数字转千分位.如将数字87463297转成87,463,297,方法有很多种,我这里只想到5种. 1.利用正则的零宽度正预测先行断言(?=exp),名字有点难记,意思是它断言自身出现的位置的后面能匹配表达式exp,对此概念还不明白的可以戳这里,这里不做过多解释.数字千分位的特

  • JAVA数字千分位和小数点的现实代码(处理金额问题)

    金融类等项目通常对于金额较大的字段,通常要求千分位显示,数字保留两位小数,分装工具类方便以后工作需要: 说明: 1.井号(#)表示一位数字,逗号是用于分组分隔符的占位符,点是小数点的占位符. 2.如果小数点的右面,值有三位,但是式样只有两位.format方法通过四舍五入处理. 3.0 - 如果对应位置上没有数字,则用零代替 4.# - 如果对应位置上没有数字,则保持原样(不用补):如果最前.后为0,则保持为空. 5.正负数模板用分号(;)分割 方法一: package com.mo.util;

  • Python如何将数字变成带逗号的千分位

    目录 将数字变成带逗号的千分位 在Python里实现方法如下 增加和去除数字的千位分隔符 1.去掉千分位 2.添加千分位 1. 拆分成整数部分和小数部分 2.为整数部分添加千分位 3.将整数部分和小数部分整合 将数字变成带逗号的千分位 一个很长的数字,有时候要把它变成千分位的数字,就是以三位数为一个分隔用逗号分开,比如 123,452,354 酱紫. 在Python里实现方法如下 format(12324232345, ',') Out[2]: '12,324,232,345' **注意:**输

  • asp下返回以千分位显示数字格式化的数值

    <% '****************************** '函数:comma(str) '参数:str,待处理的数字 '作者:阿里西西 '日期:2007/7/12 '描述:返回以千分位显示数字格式化的数值 '示例:<%=comma("120300")%> '****************************** function comma(str)  if not(isnumeric(str)) or str = 0 then  result = 

  • JS基于正则实现数字千分位用逗号分隔的方法

    本文实例讲述了JS基于正则实现数字千分位用逗号分隔的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js千分位逗号隔开</title> </head> <body> <script > var a = 222122122.6754

  • JS数字千分位格式化实现方法总结

    本文实例讲述了JS数字千分位格式化实现方法.分享给大家供大家参考,具体如下: 用js实现如下功能,将给定的数字转化成千分位的格式,如把"10000"转化成"10,000",并考虑到性能方面的因素. 一.首先想到的办法,将数字转换为字符串(toString())再打散成数组(split),如果直接数字转换为数组,就是一整个放进去了,不能单独取到每一位.然后通过循环,逐个倒着把数组中的元素插入到新数组的开头(unshift),第三次或三的倍数次,插入逗号,最后把新数组拼

  • 千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码

    最近做项目需要我们前端对金额进行千分位格式化(也就是说每三位用逗号隔开),代码已经做了修改  之前的版本是本人疏忽 真对不住大家了!现在已经做了修改 如果还有不完善的地方 请大家多多指教! 1. 支持用逗号隔开 0-9位 逗号隔开 JS代码如下: 复制代码 代码如下: /**         * JS格式化         * @param number 要格式化的数字         * @param d [0-9]位 逗号隔开         */ function numFormat(nu

随机推荐