在Python中,如何将字符串拆分为多个整数?

时间:2011-11-10 14:11:01

标签: python string integer

这有效!

>>> from datetime import date

>>> today=date(2011,10,11)

但我该怎么做?

>>> day =  '2011/10/11'

>>> today=date(day.split('/'))

请注意:

>>> day.split('/') 

['2011', '10', '11']

我看过this link.But我需要日期()的整数而不是列表

5 个答案:

答案 0 :(得分:10)

使用专为解析日期而设计的datetime.datetime.strptime()

In [5]: datetime.datetime.strptime('2011/12/03', '%Y/%m/%d').date()
Out[5]: datetime.date(2011, 12, 3)

答案 1 :(得分:2)

Python有一个特殊的语法,用于将序列作为参数传递:

today=date(*day.split('/'))

但参数也必须是整数,所以你可以使用:

today=date(*map(int,day.split('/')))

答案 2 :(得分:2)

这应该有效:

date(*map(int, day.split('/')))

>>> map(int, day.split('/'))
[2011, 10, 11]
>>> date(*map(int, day.split('/')))
datetime.date(2011, 10, 11)

答案 3 :(得分:2)

您可以遍历从day.split()获得的列表,并将每个条目转换为int。

today = date([int(x) for x in day.split('/')]) 

答案 4 :(得分:0)

>>> date( *(map(int,day.split('/'))))
datetime.date(2011, 10, 11)