分析字符串->数字

我一直在文档中看来,但我不知道如何 您 *应该 *将格式化的字符串解析为数字(以及其他 在Python中,数据类型). 在C#中,您可以说 int.parse(mystring) 它将将" -12,345"之类的字符串变成适当的INT. 有用 对于各种格式的各种数据类型,您可以 通过IT语言环境参数告诉它,例如解析德语 " 12.345,67"到12345.67. Java也这样做. (integer.parseint(mystr),iirc). Python的等效物是什么? 如果唯一的问题是逗号千分之徒(例如, " 12,345.67"),是否有一种更高的绩效方式将其转换为 数字为12345.67,而不是使用Python的正式解析器? 谢谢.

# 回答1

Tuanglen>我一直在文档中看来,但我不知道 Tuanglen>您如何 *假设 *将格式化的字符串解析为数字 Python中的Tuanglen>(以及其他数据类型). 查看语言环境模块. 来自" Pydoc Locale": 在模块环境上的帮助: 姓名 语言环境支持. 文件 /USERS/skip/local/lib/python2.4/locale.py 模块文档http://www.python.org/doc/current/li...le-locale.html 描述 该模块可低水平访问C LIB的位置API 并添加高级数字格式化API以及一个语言环境 混音引擎以补充它们. ... 功能 atof(str,func = ) 根据语言环境设置将字符串解析为浮子. atoi(str) 根据语言环境设置将字符串转换为整数. ... 跳过
# 回答2

你好tuang, i = int(" 12,345.67" .replace(",","")) Hth. miki
# 回答3

跳过montanaro 在消息新闻中写道: ... 感谢您拍摄它,但它似乎行不通: -12345 鉴于我认为我拥有的地方,它应该能够解析 " -12,345"如果可以处理包含数千种分隔符的格式, 但是显然不能. 如果Python实际上没有自己的格式化数字解析, 获取数据的首选Python方法是什么? 格式化的货币(例如" - $ 12,345.00")从网页上刮下来, 将其转换为数值数据? 谢谢.
# 回答4

tutexhydeide@hotmail.com(tuang)写道 新闻:df**********************************************************************字: 问题是默认情况下,数字语言环境未设置为解析 那些数字. 您必须单独进行设置: 1.234 除非我错过了什么,否则它不支持忽略货币符号 解析数字时,您仍然无法处理" - $ 12,345.00",即使您 设置数字和货币地点. - - Duncan Booth du dude@rcp.co.uk int月(char *p){return(124864/((P [p [0]+p [1] -p [2]&0x1f)+1)+1)%12)[" \ 5 \ x8 \ 3" " \ 6 \ 7 \ xb \ 1 \ x9 \ xa \ 2 \ 2 \ 0 \ 4"];} //谁说我的代码晦涩难懂?
# 回答5

Tuang>感谢您拍摄它,但它似乎行不通: -12345 看看 t LOCALE.LOCALECONV()的输出,带有各种位置. 我想您会发现locale.localeconv()['t千s_sep']是',不是','. 失败,您可能只想更换逗号和美元标志 用空字符串在传递到int()或float()之前,像其他人一样 建议. 如果您要刮擦可能不使用相同charset的网页,请小心 像你一样做. 您可能会发现类似的东西: $ 123.456,78 作为欧洲网站上的报价. 我不知道该怎么说 格式化数字数据时,远程站点用作其语言环境. 也许 知道页面的魅力足以做出有根据的猜测. 跳过
# 回答6

跳过montanaro 写道 谢谢,跳过. 我没有计划某种阴暗的屏幕刮擦 操作或任何类似的操作. 这更多是一个通用的问题 关于如何将Python用作方便的实用语言. 有时我会在某处找到一张有趣的数据表 在网络周围冲浪,我想抓住数据并播放 有点. 在操作规模上,我可以看页页面 来源并找出编码,货币是什么等.我知道 如何将格式的字符串变成其他语言的可用数字 我使用的(尽管在某些情况下我可能必须检查文档 提醒自己的细节),并且由于文档并没有真正制作 很明显,"一种清晰明显的做法"是什么 python,我想我要问. 看来Python还没有(尚未)有相同的正式支持 对于诸如C#和 爪哇有,但是现在还可以. 我只是想确保我 没有开始创建自己的天真,自制的功能等效物 已经是标准API的一部分.

标签: python

添加新评论