티스토리 뷰

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
//: Playground - noun: a place where people can play
 
import UIKit
 
var a = 3.5
 
var b = 4
 
var c = a * Double(b)
 
var str = "\(a) times \(b) is \(c)"
 
 
var arr = [1,2,3,4,5]
 
arr[3]
arr[0]
arr[1]
 
//append
arr.append(6)
 
println(arr)
 
//arr.removeAtIndex(2)
println(arr)
 
//arr.removeLast()
println(arr)
 
arr.removeRange(1...3)
println(arr)
 
var newArr = [1,2.3,"Tom"]
 
var emptyArr:[Int]
 
var dict = ["name":"Rob" , "age":34 , "gender":"male"]
//nil인지 아닌지 체크, 옵셔널 붙음
println(dict["name"])
//nil이 나옴
println(dict["named"])
//옵셔널 없이
println(dict["age"]!)
 
dict["hairColour"]="brown"
 
dict["age"]=35
 
println(dict)
 
//swift에서는 변수 형식을 자유롭게 바꿀 수 있다! (Int <-> Str)
dict["age"]="old"
println(dict)
 
//nil로 값을 변경하면, 해당 키와 값이 없어짐.
dict["age"]=nil
println(dict)
 
 
var name = dict["name"]
 
var names = "name"
//이런식으로는 접근 불가
//var myString1 = "My name is " + dict["name"]
var myString1 = "My name is \(name)"
var myString2 = "My name is \(name!)"
 
//파이썬처럼 바로 dict에 접근하는게 아니라, 위의 예제처럼 받는 것을 지정해주거나, 
string으로 키값을 지정해줘서 접근해야 올바르게 뜬다. 그리고 !를 붙여야 옵셔널이 붙지 않음.
var myString3 = "My name is \(dict[names]!) "












 
cs



파이썬과 다르게 dict 접근에 조금 귀찮은 것을 알게되었습니다. (현재 수준으로는 이렇게 접근하는 것 같습니다.)


파이썬에서는 dict 접근이 상대적으로 매우 쉬웠습니다. 우선 비교를 하면 다음과 같습니다.



[파이썬 dict접근]

1
2
3
4
5
6
7
8
9
10
dict=["name":"Tom","age":34,"value":"private"]
 
dict["name"]
#"Tom"
 
dict["age"]
#34
 
text = "my name is "+dict["name"]+"and my age is "+str(dict["age"])
#"my name is Tom and my age is 34"
cs

위의 예제에서도 보이듯이 파이썬에서는 바로바로 해당 키에 대한 값을 접근할 수 있었습니다.


하지만 Swift에서는 dict의 키값을 입력하면 오류를 토해냅니다. (이 차이가 조금 더 귀찮아지군요.)

현재 수강중인 강의에서는 이러한 귀찮음을 해결하기위해 예를 들어, 해당 키값에 대한 String을 따로 변수로 지정해줘서

dict의 키값에 넣어서 출력하는 형태를 취하고 있습니다.


이보다 조금 쉬운 방법을 배우게 된다면 다시 블로그에 남기도록 하겠습니다.







댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/03   »
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 26 27 28 29 30
31
글 보관함