# 반복문 for
# for 변수 in 반복가능데이터(시퀀스 데이터!!!) :

# array 요소 출력
s = 'abcdefg'
for n in s:    # n 안에 a b c d....
    print(n)

# list
my_list = [10, 20, 30, 40]
for n in my_list:
    print(n)

# tuple
my_tup = (100, 200, 300, 400, 500)
for n in my_tup:
    print(n)

# set
my_set = {1, 2, 3, 4}
for n in my_set:
    print(n)

# dictionary : key를 출력한다
my_dic = {10: 'aa', 20: 'bb', 30: 'cc', 40: 'dd'}
for n in my_dic:
    print(n)
for n in my_dic.keys():     # 키
    print(n)
for n in my_dic.values():   # 값
    print(n)
for n in my_dic.items():    # 리스트의 튜플로 구성 요소 추출
    print(n)
for k, v in my_dic.items():    # 언패킹.
    print(k, v)

# 데이터를 다루는 가장 기본적인 형태
# 리스트-딕셔너리
std_data1 = [{'name': 'John', 'age': 20}, {'name': 'Jack', 'age': 50}, {'name': 'Harry', 'age': 18}]
for n in std_data1:
    print(n)
# dictionary 포맷으로 원하는 형태로 데이터를 가공할 수 있다.
for n in std_data1:
    print('name: %(name)s, age: %(age)s'%n)

# 리스트-튜플
std_data2 = [('John', 20), ('Jack', 50), ('Harry', 18)]
for n in std_data2:
    print(n)
for n, a in std_data2:  # 언패킹하여 키와 값만 추출할 수 있다.
    print(n, a)