1、Python

1.1 format方法:

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'

>>> print 'The value is {:0,.2f}'.format(1234567.125)

The value is 1,234,567.12

>>> print 'The value is {:0,.2f}'.format(1234567.126)

The value is 1,234,567.13

1.2 正则实现:

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)

1.3 locale

def number_format(num, places=0):

"""Format a number according to locality and given places"""

locale.setlocale(locale.LC_ALL, "")

return locale.format("%.*f", (places, num), True)

>>> import locale

>>> number_format(12345678.123)

'12,345,678'

>>> number_format(12345678.123, 2)

'12,345,678.12'

>>> import locale

>>> a = {'size': 123456789, 'unit': 'bytes'}

>>> print(locale.format("%(size).2f", a, 1))

123456789.00

>>> locale.setlocale(locale.LC_ALL, '') # Set the locale for your system

'en_US.UTF-8'

>>> print(locale.format("%(size).2f", a, 1))

123,456,789.00

1.4 DIY

>>> s = "1234567890"

>>> s = s[::-1]

>>> a = [s[i:i+3] for i in range(0,len(s),3)]

>>> print (",".join(a))[::-1]

2、Perl

perl -e '$size = "1234567890";while($size =~ s/(\d)(\d{3})((:?,\d\d\d)*)$/$1,$2$3/){};print $size, "\n";'

1,234,567,890

3、Sed

echo 12345|sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1,\2/;ta'

12,345

4、Bash

printf "%'d\n" 12345

12,345

5、JavaScript

5.1 Number.prototype.toLocaleString()  方法

parseInt('123456789456.34').toLocaleString()

"123,456,789,456"

5.2 Intl object

Intl.NumberFormat().format(1234.1235);

"1,234.124"

5.3 正则

function addCommas(n){

var rx=  /(\d+)(\d{3})/;

return String(n).replace(/^\d+/, function(w){

while(rx.test(w)){

w= w.replace(rx, '$1,$2');

}

return w;

});

}

addCommas('123456789456.34');

"123,456,789,456.34"

'12345678.34'.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")

"12,345,678.34"

注:某些方法不支持小数部分或者小数部分四舍五入,请慎用。

6、Refer:

[1] shell、perl、python 千分位 逗号分隔符输出

[2] How do I add a thousand seperator to a number in JavaScript? [duplicate]

[3] How to print a number with commas as thousands separators in JavaScript

python 千位分隔符_玩转千位分隔符输出 - leejun2005的个人页面 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. python允许无止境的循环吗_Python第一天 - 思想永无止境的个人页面 - OSCHINA - 中文开源技术交流社区...

    下载安装python以及相关软件. python 直接到python官网下windows-msi文件,版本根据需要下2.7或3.0. pydev 自己网上搜,pydev官网的反而不行(eclipse上 ...

  2. mysql外码内码定义_中文编码杂谈(转) - CodeAxe的个人页面 - OSCHINA - 中文开源技术交流社区...

    编码问题的例子 在windows自带的notepad(记事本)程序中输入"联通"两个字,保存后再次打开,会发现"联通"不见了,代之以"��ͨ" ...

  3. 人工鱼群算法python代码_人工鱼群算法python_鱼群算法 - Brillou的个人空间 - OSCHINA - 中文开源技术交流社区......

    本算法是参照李晓磊博士的论文实现的,详细的算法原理可阅读<一种新型的智能优化方法_人工鱼群算法_李晓磊> 算法基于鱼群的生存行为:在一片水域中,鱼存在的数目最多的地方就是本水域中富含营养物 ...

  4. python写等腰三角形的性质_杨辉三角—知识点详解 - osc_8cfq8uoa的个人空间 - OSCHINA - 中文开源技术交流社区...

    杨辉三角 杨辉三角(欧洲叫帕斯卡三角)是一个很奇妙的东西,它是我国数学家杨辉在1261年发现的,欧洲的帕斯卡于1654年发现,比我国的巨佬数学家杨辉晚了393年.(在此show一下我的爱国情怀) 铺垫 ...

  5. java电子报刊网站_采集电子报纸 - 杨尚川的个人页面 - OSCHINA - 中文开源技术交流社区...

    1.接口 /** *报纸采集器 * @author 杨尚川 */ public interface PaperCollector { /** * 下载当日报纸,一个文件对应一个版面 * @return ...

  6. java 在界面上画一个时钟_编写程序显示一个时钟 - javaCoder的个人页面 - OSCHINA - 中文开源技术交流社区...

    编写程序显示一个时钟.示例输出如图所示. 代码: package com.DisplayClock; import javax.swing.*; import java.awt.*; import j ...

  7. java自定义标签遍历_自定义标签 - CarlDing的个人页面 - OSCHINA - 中文开源技术交流社区...

    EL的不足,由JSTL来加强  -> 自定义标签来实现. 1:自定义标签 1:自定义标签也是类. 2:让用户在JSP页面使用,不引用Java代码的情况下,调用Java代码. 2:标签开的类的继承 ...

  8. python如何使用sdk_Python_sdk首页、文档和下载 - 优图人脸识别sdk - OSCHINA - 中文开源技术交流社区...

    Python_sdk是一款用于腾讯优图人脸识别服务的sdk文件,优图人脸识别(Face Recognition), 是由腾讯优图团队研发的,基于人的脸部特征信息进行身份识别的一种生物识别技术.它提供了 ...

  9. java完成九宫格数独_数独(简易九宫格) - 小黑202的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.ViewController.h中代码 // //  ViewController.h //  ThirdSignleView // //  Created by on 15/6/10. //   ...

最新文章

  1. Verilog学习----条件语句、循环语句、块语句与生成语句
  2. 给SharePoint页面加入自己定义页脚Custom footer
  3. elasticsearch实战三部曲之三:搜索操作
  4. mysql8.0其他机器访问_论文导读|基于机器学习的高速缓存预取
  5. 2018-行远自迩,登高自卑
  6. Redis 04_位图bitmap
  7. linux多线程求和_linux 多线程信号处理总结
  8. Oracle数据库导入导出 imp/exp备份还原
  9. SQL Server中的KILL SPID命令
  10. 长春工业大学计算机组成原理考试开卷考吗,计算机组成原理期末复习资料
  11. NOIP2013普及组复赛第一题《计数问题》CA代码
  12. js登录界面使用ajax连接数据库,js用ajax连接数据库数据
  13. ODB++ 数据格式解析软件
  14. 计算机专业正高职称怎么获得,正高级软件工程师职称认定办理
  15. Python学习(一) 准备工作
  16. c语言已知斜率 求倾角,直线与方程(一)倾斜角与斜率
  17. Regin恶意软件:何以潜伏如此久?
  18. Gartner:云安全进入高速发展期
  19. Vim 的 paste 模式
  20. PLSQL 14.0.6 下载使用教程

热门文章

  1. LIB BFD, the Binary File Descriptor Library
  2. 网址收藏 2020.12.11
  3. gettid()和pthread_self()的区别
  4. python beautifulsoup报错bs4 FeatureNotFound Couldnot find a tree builder with the features
  5. nginx的目录结构和配置文件
  6. Hadoop之MapReduce介绍
  7. Dajngo之ajax(get和post)请求(亲测)
  8. python的web技术宅
  9. springboot细节挖掘(jar和war打包)
  10. java 分割数据_java 分割csv数据的实例详解