Должно работать следующее:
now = new Date();
if (now.getMonth() == 0) {
current = new Date(now.getFullYear() - 1, 11, 1);
} else {
current = new Date(now.getFullYear(), now.getMonth() - 1, 1);
}
с учетом того, что месяцы начинаются с нуля, поэтому декабрь составляет 11 , а не 12.
Но, как уже отмечали другие, месяц оборачивается даже как часть атомного конструктора, поэтому также возможно следующее:
now = new Date();
firstDayPrevMonth = new Date(now.getFullYear(), now.getMonth() - 1, 1);
То, что вы, вероятно, ищете, называется zip
:
>>> x = ['this', 'is', 'the', 'first', 'list']
>>> y = [1, 2, 3, 4, 5]
>>> z = [0.01, 0.2, 0.3, 0.04, 0.05]
>>> zip(x,y,z)
[('this', 1, 0.01), ('is', 2, 0.20000000000000001), ('the', 3, 0.29999999999999999), ('first', 4, 0.040000000000000001), ('list', 5, 0.050000000000000003)]
>>> for (a,b,c) in zip(x,y,z):
... print a, b, c
...
this 1 0.01
is 2 0.2
the 3 0.3
first 4 0.04
list 5 0.05
Использовать zip
for items in zip(L1, L2, L3):
print items
элементы
будут кортежем со значением из каждого список,
lists = ( ['this', 'is', 'the', 'first', 'list'],
[1, 2, 3, 4, 5],
[0.01, 0.2, 0.3, 0.04, 0.05])
print zip(*lists)
объединяет списки вместе и останавливается, когда в самом коротком списке заканчиваются элементы.
Это наиболее очевидный способ (для python newb), и, вероятно, есть способ получше, но здесь:
#Your list of lists.
uberlist = ( list1, list2, list3 )
#No sense in duplicating this definition multiple times.
#Define it up front.
uberRange = range( len( uberList ) );
#Since each will be the same length, you can use one range.
for i in range( len( list1 ) ):
# Iterate through the sub lists.
for j in uberRange:
#Output
print uberlist[ j ][ i ];