【问题标题】:Convert unicode to an int or str in python 2.7在 python 2.7 中将 unicode 转换为 int 或 str
【发布时间】:2015-09-14 10:25:25
【问题描述】:

所以我存储了一些从网站上抓取的数据。该数据的一部分是数字,即类型是 unicode,我想将其转换为 int 或 str,然后转换为 int,以便将它们加在一起。 我正在使用 python 2.7,unicode 是 u'11:33:52' 我怎样才能把它变成一个int

【问题讨论】:

  • 你想返回 3 个不同的整数吗? 11:33:52 不是一个整数。通常,您可以通过调用int('123') 将 str/unicode 转换为整数。但在你的情况下,这会引发异常。
  • 你必须更清楚你期望的输出是什么。 int() 并不关心你传入的是str 还是unicode 对象,不需要首先转换为str
  • 谢谢你说得通。我正在从我正在报废的网页中提取时间,就像一个测试,因为该网站当前没有显示脚本所针对的对象。我要定位的对象是一个数字,当网站实际显示它时它将是一个浮点数。因此,只需在将采用 unicode 的浮点数上调用 int 就会将其作为 int 返回?
  • 如果你想在 Python 中将 Unicode 转换为浮点数以便对其执行数学计算,你可以调用 float() 而不是 int()。

标签: python python-2.7 unicode


【解决方案1】:
import time

a = u'11:33:52'

b = time.strptime(a, "%H:%M:%S")

print(time.strftime("%H:%M:%S", b))

>> 11:33:52

使用strptime 将其转换为正确的格式,然后strftime 会给您时间。

如果您获得月/日/年格式,此方法也可以使用。在这种情况下,将 "%H:%M:%S" 更改为 "%a, %d %b %Y %H:%M:%S"

【讨论】:

    猜你喜欢
    • 2017-01-18
    • 2014-04-03
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 2018-03-07
    • 1970-01-01
    • 2018-08-29
    • 2017-06-20
    相关资源
    最近更新 更多