我是python的新手,我不明白为什么没有以下工作:
DateFormat df1 = new SimpleDateFormat("y-M-d'T'H:m:s.SX");
DateFormat df2 = new SimpleDateFormat("y-M-d'T'H:m:s.SSX");
DateFormat df3 = new SimpleDateFormat("y-M-d'T'H:m:s.SSSX");
try {
result = df1.parse(inputDate); // first attempt
} catch (ParseException e1) {
try {
result = df2.parse(inputDate); // second attempt
} catch (ParseException e2) {
result = df3.parse(inputDate); // last attempt, dead if fails
}
}
因为我正在
ea = zip([[200, 1], [10, 1]])
虽然我应该添加像
这样的星号[([200, 1],), ([10, 1],)]
获得我想要的结果,即
ea = zip(*[[200, 1], [10, 1]])
我认为*是为了将列表转换为元组,我出错了什么?
答案 0 :(得分:1)
如果您有时间可以阅读此post,那么了解*
如何在Python中运行是一个很好的资源。
Python中的星号解包扩充功能,请参阅here
z = [4, 5, 6]
f(*z)
将与:
相同f(4,5,6)
字典中的 **
与列表中的*
类似。
答案 1 :(得分:0)
>>> zip([200, 1], [10, 1])
[(200, 10), (1, 1)]
需要多个参数,如下所示:
*
如果你只想使用一个参数,那么使用>>> zip(*[[200, 1], [10, 1]])
[(200, 10), (1, 1)]
>>>
,因为它具有将其分解为多个参数的效果:
*
response = urllib2.urlopen(url)
不会将列表转换为元组。它解压缩列表(http://kafka.apache.org/documentation.html#configuration)。