💥 Generator이기 때문에 단독으로는 사용 불가.
range(start, stop, step)
( ) 안의 구조는 슬라이싱과 비슷하며, 동일하게 사용할 수 있음.
range(1,5)
> range(1,5)
list(range(1,5))
> [1,2,3,4]
: 0부터 n번째 인덱스 값까지의 정수 반환
for num1 in range(3):
print(num1)
> 0
> 1
> 2
: n1번째 인덱스 부터 n2번째 인덱스 값까지의 정수를 반환.
for num in range(1,5):
print(num)
> 1
> 2
> 3
> 4
: n1번째 인덱스 부터 n2번째 인덱스 값 중에 n3만큼의 간격이 있는 정수 반환
for num3 in range(0,8,3): # '0' 12 '3' 45 '6' 7
print(num3)
> 0
> 3
> 6
enumerate ( 변수명 or "문자열")
💥 Generator이기 때문에 단독으로는 사용 불가.
count1 = 0
game = "warcraft3" # 문자열을 변수에 할당
for text1 in game:
print(game[count1]) # 이렇게만 실행하면 w만 8번 출력됨.
count1 += 1
위의 코드에 enumerate() 함수를 사용하면
count1 = 0 과 count1 += 1 와 같은 부분을 생략 가능하며
game = "warcraft3"
for items in enumerate(game):
print(items)
> (0,w)
> (1,a)
> (2,r)
> (3,c)
> (4,r)
> (5,a)
> (6,f)
> (7,t)
> (8,3)
tuple 형태로 반환(출력)된 결과는, unpacking으로 요소값만 출력할 수 있음
game = "warcraft3"
for ind,item in enumerate(game):
print(item)
> w
> a
> r
> c
> r
> a
> f
> t
> 3
zip (리스트, 튜플, 문자열)
💥 Generator이기 때문에 단독으로는 사용 불가.
no = '1234'
birth = ('8월','5월','2월')
days = [13,25,31]
name = {'홍':'길동','하':'루방','아':'무개'}
for birth_list in zip(no,birth,days,name):
print(birth_list)
> (1,'8월',13,'홍')
> (2,'5월',30,'하')
> (3,'2월',1,'아')
min( )
max( )
ml = [1,2,14,21,10]
ms = "ajhwjhkjaw"
mt = (1,5,"가","50000")
md = {'홍':'길동','하':'루방','아':'무개'}
min(ml) / max(ml)
> 1 > 21
min(ms) / max (ms)
> a > w
min(mt) / max(mt)
> '아' > '홍'
min(md) / max(md)
> '<' not supported between instances of 'str' and 'int'
input("문자열" or 변수명)
input("원하는 메뉴를 선택하세요")
> 원하는 메뉴를 선택하세요 [ 사이다 ]
>> '사이다'
num1 = input("원하는 번호를 선택하세요")
> 원하는 메뉴를 선택하세요 [ 1345 ]
type(num1)
> str
num1 = int(input("원하는 번호를 선택하세요"))
num1 = float(input("원하는 번호를 선택하세요"))
num1 = input("원하는 번호를 선택하세요")
int(num1) # int로 형변환
float(num1) # float으로 형변환