결과 : 객체에 counter를 더하고 돌려줌. 리턴값은 바로 액세스 할 수 없으므로, 한번 객체에 선언하면 tuple을 돌려준다.
형식 :
enumerate(iterable, start = 0)
# iterable : iterable한 객체가 parameter로 온다
# start = 0 : 시작할 인덱스를 지정할 수 있다. 디폴트 값은 0
for문에 사용할 시에는 index, element 순으로 리턴된다.
grocery = ['bread', 'milk', 'butter']
for count, item in enumerate(grocery):
print(count, item)
>>> 0 bread
1 milk
2 butter
결과 : 객체에서 가장 큰 항목 또는 두개 이상 arguments 중 가장 큰 것을 돌려줌.
형식 :
max(arg1, arg2, *args, key)
문자열의 경우, 문자열 코드값의 최대값을 리턴.
max(iterable, *iterables, key, default)
# iterable : iterable한 객체
# *iterables : iterable한 객체의 수
# key : dictionary등 키를 이용하여 value의 max를 찾을때 사용
# default : iterable객체가 빈 경우 리턴할 값
딕셔너리의 경우, parameter로 key를 받아 value값이 큰 key를 다음과 같이 리턴할수 있다.
sum(iterable, start)
# iterable: iterable 객체 중 숫자만 가능하다
# start: iterable 의 sum에 추가로 더해진다. 디폴트값은 0.
참고 : 문자열에 sequence를 연결하는 경우에는 .join(sequence)
를 쓸 수 있다.
>>> ' - '.join('일월화수목금토')
'일 - 월 - 화 - 수 - 목 - 금 - 토'
>>> '.'.join('가난하다고 외로움을 모르겠는가'.split())
'가난하다고.외로움을.모르겠는가'
>>> ''.join(['가난하다고', '외로움을', '모르겠는가'])
'가난하다고외로움을모르겠는가'
예제출처 : https://python.bakyeono.net/chapter-5-2.html
결과 :
형식 :
zip(*iterables)
number_list = [1, 2, 3]
str_list = ['one', 'two', 'three']
# No iterables are passed
result = zip() # []
# Two iterables are passed
result = zip(number_list, str_list)
print(result) # <zip object at 0x10a8a4b40>
# Converting itertor to set, set이므로 순서는 항상 랜덤.
result_set = set(result)
print(result_set) # {(2, 'two'), (3, 'three'), (1, 'one')}
"*" 키워드를 이용하여 upzip도 가능하다.
coordinate = ['x', 'y', 'z']
value = [3, 4, 5]
result = zip(coordinate, value)
result_list = list(result)
print(result_list) #[('x':3),('y':4),('z':5)]
c, v = zip(*result_list)
print(c) # ('x','y','z')
print(v) # (3,4,5)