2016-10-31 5 views
-1

В Python, я могу это сделать:Попытка повторить список Python в Swift

day0 = 0 
day1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 
     11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 
     21, 22, 23, 24, 25] 

day2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 
     11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 
     21, 22, 23, 24, 25] 

day3 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 
     11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 
     21, 22, 23, 24, 25] 

day4 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 
     11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 
     21, 22, 23, 24, 25] 

month0 = 0 
january = [day0, day1, day2, day3, day4] 
february = [day0, day1, day2, day3, day4] 
march = [day0, day1, day2, day3, day4] 
april = [day0, day1, day2, day3, day4] 
may = [day0, day1, day2, day3, day4] 
june = [day0, day1, day2, day3, day4] 
july = [day0, day1, day2, day3, day4] 
august = [day0, day1, day2, day3, day4] 
september = [day0, day1, day2, day3, day4] 
october = [day0, day1, day2, day3, day4] 
november = [day0, day1, day2, day3, day4] 
december = [day0, day1, day2, day3, day4] 

calendar = [month0, january, february, march, april, may, june, july,  august, september, 
      october, november, december] 

тогда это:

print calendar[2][3[0][3]] 

и я хотел бы получить номер 3 вернулся ко мне , Мне трудно понять, как это сделать в Свифт.

Я могу создать списки в основном так же, как в Swift

var day0 = 0 
var day1 = [0, 8, 2, 3, 4] 
var day2 = [0, 1, 2, 3, 4] 
var day3 = [0, 1, 2, 3, 4] 
var day4 = [0, 1, 2, 3, 4] 

var month0 = 0 
var january = [[day0, day1, day2, day3, day4]] 
var february = [day0, day1, day2, day3, day4] 
var march = [day0, day1, day2, day3, day4] 
var april = [day0, day1, day2, day3, day4] 
var may = [day0, day1, day2, day3, day4] 
var june = [day0, day1, day2, day3, day4] 
var july = [day0, day1, day2, day3, day4] 
var august = [day0, day1, day2, day3, day4] 
var september = [day0, day1, day2, day3, day4] 
var october = [day0, day1, day2, day3, day4] 
var november = [day0, day1, day2, day3, day4] 
var december = [day0, day1, day2, day3, day4] 

var calendar = [month0, january, february, march, april, may, june, july, august, september, october, december] 

Но когда я пытаюсь вызвать элемент, я получаю сообщение об ошибке

BedTimeLabel.text = String(january[1],][1]) 
*** Expected expression in list of expressions *** 

Или, когда я пытаюсь это так

BedTimeLabel.text = String(format: january[1],arguments: [1]) 

Я получаю эту ошибку

Cannot convert value of type 'NSArray' to expected argument type 'String' 
+0

у вас есть ошибка синтаксиса в Python и Swift. Почему вы используете '[[' вместо '[' в Swift 'january = [[...]]'? – furas

+0

Возможно опечатка. Что вы хотите делать с 'var day0 = 0' и' var month0 = 0' хотя? Из-за этого массив должен быть 'NSArray' вместо« простого »' [[[Int]]] '. – Eendje

+0

@furas Это часть моего разочарования. Я прочитал на другом форуме, что это был синтаксис. – travis

ответ

1

У меня нет знаний о Python, поэтому я не совсем уверен, что понимаю ваш вопрос.

Из того, что я понял, у вас есть многомерный массив, который выглядит, как это в Swift:

let day1 = [0, 1, 2, 3, 4, 5, 6, 7] 
let day2 = [0, 1, 2, 3, 4, 5, 6, 7] 
let day3 = [0, 1, 2, 3, 4, 5, 6, 7] 
let day4 = [0, 1, 2, 3, 4, 5, 6, 7] 

let jan = [day1, day2, day3, day4] 
let feb = [day1, day2, day3, day4] 
let mar = [day1, day2, day3, day4] 
let apr = [day1, day2, day3, day4] 

let calendar = [jan, feb, mar, apr] 

let result = calendar[2][3][3]  // 3 
+0

Да, это то, что он говорил о хорошей работе! :) – thesonyman101

+0

У меня почти нет знаний о быстром. – thesonyman101

+1

Единственное, что я не уверен в том, что он хочет делать с «var month0 = 0» и «var day0 = 0'? – Eendje