https://colab.research.google.com/
Google Colab
colab.research.google.com
Colaboratory
파이썬 코딩하는 곳
파이썬에서 문자열(string)은 문자의 연속으로 이루어진 데이터 타입입니다. 문자열은 불변(immutable)하며, 문자, 숫자, 공백, 심지어 특수 문자를 포함할 수 있습니다. 문자열은 파이썬에서 가장 많이 사용되는 데이터 타입 중 하나로, 다양한 작업에서 사용됩니다. 아래는 문자열의 주요 이론과 특징들입니다.
1. 문자열 생성
문자열은 작은따옴표(') 또는 큰따옴표(")로 생성할 수 있습니다.
python
string1 = 'Hello' string2 = "World"
여러 줄 문자열은 삼중 따옴표(''' 또는 """)로 생성할 수 있습니다.
python
multiline = '''이 문자열은 여러 줄로 이루어져 있습니다.'''
2. 문자열의 불변성
파이썬의 문자열은 불변(immutable) 데이터 타입입니다. 즉, 문자열이 생성되면 내용을 변경할 수 없습니다.
python
string = "Hello" # string[0] = "h" # 오류 발생: 문자열은 변경 불가능 string = "hello" # 새로운 문자열 객체 생성
3. 문자열 인덱싱과 슬라이싱
인덱싱 : 문자열의 특정 문자에 접근. 0부터 시작.
슬라이싱 : 문자열의 일부를 추출.
python
string = "Python" print (string[0 ]) # 'P' print (string[-1 ]) # 'n' (음수 인덱스는 뒤에서부터 접근) print (string[0 :3 ]) # 'Pyt' (0번 인덱스부터 2번까지) print (string[:3 ]) # 'Pyt' (시작 생략 = 처음부터) print (string[3 :]) # 'hon' (끝 생략 = 끝까지) print (string[::2 ]) # 'Pto' (2칸씩 건너뜀)
4. 문자열 조작 메서드
변환 메서드
python
string = "hello" print (string.upper()) # 'HELLO' (대문자로 변환) print (string.lower()) # 'hello' (소문자로 변환) print (string.capitalize()) # 'Hello' (첫 문자만 대문자)
검색 및 검사 메서드
python
string = "Hello World" print (string.find("World" )) # 6 (단어의 시작 인덱스 반환) print (string.startswith("Hello" )) # True print (string.endswith("World" )) # True
공백 제거
python
string = " hello " print (string.strip()) # 'hello' (앞뒤 공백 제거) print (string.lstrip()) # 'hello ' (왼쪽 공백 제거) print (string.rstrip()) # ' hello' (오른쪽 공백 제거)
분리 및 결합
python
string = "a,b,c" print (string.split("," )) # ['a', 'b', 'c'] (문자열 분리) print ("," .join(["a" , "b" , "c" ])) # 'a,b,c' (문자열 결합)
교체
python
string = "hello world" print (string.replace("world" , "Python" )) # 'hello Python'
5. 포맷팅 (문자열 삽입)
문자열에 변수 값을 삽입하는 다양한 방법이 있습니다.
f-strings (Python 3.6 이상):
python
name = "Alice" print (f"Hello, {name} !" ) # 'Hello, Alice!'
format 메서드 :
python
print ("Hello, {}!" .format ("Bob" )) # 'Hello, Bob!'
C 스타일 포맷팅 :
python
age = 25 print ("I am %d years old." % age) # 'I am 25 years old.'
6. 문자열의 유니코드 지원
파이썬의 문자열은 유니코드를 기본적으로 지원하여, 다양한 언어와 이모지 등을 포함할 수 있습니다.
python
string = "안녕하세요 😊" print (len (string)) # 문자 수
7. 문자열의 기타 특징
문자열 반복 :
python
print ("Hello" * 3 ) # 'HelloHelloHello'
in 연산자 : 부분 문자열 확인
python
print ("Py" in "Python" ) # True print ("Java" in "Python" ) # False
8. 문자열과 이스케이프 문자
문자열에 특수 문자를 삽입할 때 사용.
python
string = "He said, \"Python is great!\"" print (string) # He said, "Python is great!" # 이스케이프 문자의 예 newline = "Hello\nWorld" # 줄바꿈 tabbed = "Hello\tWorld" # 탭
9. 문자열의 길이
문자열의 길이는 len() 함수를 사용하여 알 수 있습니다.
python
string = "Python" print (len (string)) # 6
10. 문자열 정렬
python
string = "Python" print (string.center(10 , "-" )) # '--Python--' print (string.ljust(10 , "-" )) # 'Python----' print (string.rjust(10 , "-" )) # '----Python'
# range(end)
# range(start, end)
# range(start, end, step)
print ( range ( 7 ))
print ( range ( 3 , 7 ))
print ( range ( 1 , 10 , 2 ))
range(0, 7)
range(3, 7)
range(1, 10, 2)
sum = 0
mul = 1
# range(start, end)
for num in range ( 1 , 6 ) :
sum += num
mul *= num
print ( f '숫자들의 합: {sum} ' )
print ( f '숫자들의 곱: {mul} ' )
숫자들의 합:15
숫자들의 곱:120
sum = 0
mul = 1
# range(start, end)
for num in range ( 1 , 6 , 2 ) :
sum += num
mul *= num
print ( f '숫자들의 합: {sum} ' )
print ( f '숫자들의 곱: {mul} ' )
숫자들의 합:9
숫자들의 곱:15
sum = 0
mul = 1
# range(start, end)
for num in range ( 10 , 0 , 2 ) :
sum += num
mul *= num
print ( f '숫자들의 합: {sum} ' )
print ( f '숫자들의 곱: {mul} ' )
숫자들의 합:0
숫자들의 곱:1
5
for ch in "Hello" : #['H', 'e', 'l', 'l', 'o']
print (ch)
H
e
l
l
o
str = input ()
for ch in str :
print (ch)
hello world
str = input ()
for ch in range ( len ( str )) :
print ( f ' {ch} 번째 문자는 { str [ch]} 입니다' )
str = input ()
for ch in range ( len ( str )) :
print ( f ' {ch+ 1:2d } 번째 문자는 { str [ch]} 입니다' )
for n in range ( 2 , 10 ) :
for m in range ( 1 , 10 ) :
print ( f ' {n} * {m} = {n*m} ' )
2*1=2
2*2=4
2*3=6
2*4=8
2*5=10
2*6=12
2*7=14
2*8=16
2*9=18
3*1=3
3*2=6
3*3=9
3*4=12
3*5=15
3*6=18
3*7=21
3*8=24
3*9=27
4*1=4
4*2=8
4*3=12
4*4=16
4*5=20
4*6=24
4*7=28
4*8=32
4*9=36
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
5*6=30
5*7=35
5*8=40
5*9=45
6*1=6
6*2=12
6*3=18
6*4=24
6*5=30
6*6=36
6*7=42
6*8=48
6*9=54
7*1=7
7*2=14
7*3=21
7*4=28
7*5=35
7*6=42
7*7=49
7*8=56
7*9=63
8*1=8
8*2=16
8*3=24
8*4=32
8*5=40
8*6=48
8*7=56
8*8=64
8*9=72
9*1=9
9*2=18
9*3=27
9*4=36
9*5=45
9*6=54
9*7=63
9*8=72
9*9=81
for n in range ( 2 , 10 ) :
for m in range ( 1 , 10 ) :
print ( f ' {n} x {m} = {n*m} ' , end = "\t" )
print ()
[ 1 , 2 , 3 , 4 , 5 ]
"Hello" #['H','e','l','l','o']
circle = [ 3.14 , "PI" , 7 ] #논리형(ex. True)도 리스트에 넣을 수 있음
print ( f '원주율 : {circle[ 0 ]} ' )
print ( f '원주율은 영어로 {circle[ 1 ]} ' )
print ( f '반지름 : {circle[ 2 ]} ' )
원주율 : 3.14
원주율은 영어로 PI
반지름 : 7
[ 1 , 2 , 3 , 4 , 5 ]
"Hello" #['H','e','l','l','o']
circle = [ 3.14 , "PI" , 7 ] #논리형(ex. True)도 리스트에 넣을 수 있음
print ( f '원주율 : {circle[ 0 ]} ' )
print ( f '원주율은 영어로 {circle[ 1 ]} ' )
print ( f '반지름 : {circle[ 2 ]} ' )
print ( f ' {circle[ 1 ][ 0 ]} ' )
원주율 : 3.14
원주율은 영어로 PI
반지름 : 7
P
[ 1 , 2 , 3 , 4 , 5 ]
"Hello" #['H','e','l','l','o']
circle = [ 3.14 , "PI" , 7 ] #논리형(ex. True)도 리스트에 넣을 수 있음
#circle[1] : "PI" (=["P", "I"])
#circle = [3.14, ["P", "I"]. 7] #리스트 안에는 모든 자료형(리스트 포함) 들어갈 수 있음
print ( f '원주율 : {circle[ 0 ]} ' )
print ( f '원주율은 영어로 {circle[ 1 ]} ' )
print ( f '반지름 : {circle[ 2 ]} ' )
print ( f ' {circle[ 1 ][ 0 ]} ' )
원주율 : 3.14
원주율은 영어로 PI
반지름 : 7
P
hi = "Hello" #['H','e','l','l','o']
print (hi[: 3 ])
numbers = [ 1 , 2 , 3 , 4 , 5 ]
print (numbers[: 4 ])
Hel
[1, 2, 3, 4]
hi = "Hello" #['H','e','l','l','o']
print (hi[: 3 ])
numbers = [ 1 , 2 , 3 , 4 , 5 ]
print (numbers[: 4 ]) # =numbers[0:4] -> 0번째 칸 이상 4번째 칸 미만
print (numbers[:: 2 ]) # =numbers[0:5:2]
print (numbers[ 1 :: 2 ])
Hel
[1,2,3,4]
[1,3,5]
[2,4]
ChatGPT
파이썬에서 list는 가장 자주 사용되는 데이터 구조 중 하나로, 여러 항목(요소)을 저장할 수 있는 순서가 있는 변경 가능한(mutable) 컬렉션입니다. 리스트는 다양한 데이터 타입을 포함할 수 있으며, 동적으로 크기가 조정됩니다. 다음은 파이썬 list에 대한 이론적 설명입니다.
1. 리스트 생성
리스트는 대괄호([])를 사용하여 생성하며, 쉼표(,)로 요소를 구분합니다.
python
# 빈 리스트 생성 empty_list = [] # 요소를 포함한 리스트 생성 fruits = ["apple" , "banana" , "cherry" ] # 다양한 데이터 타입 포함 가능 mixed_list = [1 , "hello" , 3.14 , True ]
2. 리스트의 주요 특징
순서 유지 : 리스트는 삽입된 순서를 유지합니다.
중복 허용 : 동일한 값의 요소를 여러 번 포함할 수 있습니다.
python
numbers = [1 , 2 , 2 , 3 ]
변경 가능(Mutable) : 생성 후에도 요소를 추가, 삭제, 변경할 수 있습니다.
3. 리스트 인덱싱과 슬라이싱
리스트는 문자열과 마찬가지로 인덱싱과 슬라이싱이 가능합니다.
인덱싱
0부터 시작하며, 음수 인덱스는 끝에서부터 접근합니다.
python
fruits = ["apple" , "banana" , "cherry" ] print (fruits[0 ]) # 'apple' print (fruits[-1 ]) # 'cherry'
슬라이싱
python
fruits = ["apple" , "banana" , "cherry" , "date" ] print (fruits[1 :3 ]) # ['banana', 'cherry'] (1번부터 2번까지) print (fruits[:2 ]) # ['apple', 'banana'] (처음부터 1번까지) print (fruits[2 :]) # ['cherry', 'date'] (2번부터 끝까지) print (fruits[::2 ]) # ['apple', 'cherry'] (2칸씩 건너뜀)
4. 리스트 조작 메서드
요소 추가
append(): 리스트 끝에 요소 추가.
insert(): 특정 위치에 요소 삽입.
extend(): 리스트 병합.
python
fruits = ["apple" , "banana" ] fruits.append("cherry" ) # ['apple', 'banana', 'cherry'] fruits.insert(1 , "date" ) # ['apple', 'date', 'banana', 'cherry'] more_fruits = ["elderberry" , "fig" ] fruits.extend(more_fruits) # ['apple', 'date', 'banana', 'cherry', 'elderberry', 'fig']
요소 제거
remove(): 특정 값 제거 (첫 번째로 발견된 값만 제거).
pop(): 특정 인덱스의 요소 제거 및 반환 (기본값은 마지막 요소).
clear(): 리스트의 모든 요소 제거.
python
fruits = ["apple" , "banana" , "cherry" , "banana" ] fruits.remove("banana" ) # ['apple', 'cherry', 'banana'] popped = fruits.pop(1 ) # 'cherry', ['apple', 'banana'] fruits.clear() # []
요소 변경
python
fruits = ["apple" , "banana" , "cherry" ] fruits[1 ] = "blueberry" # ['apple', 'blueberry', 'cherry']
5. 리스트 정렬 및 뒤집기
sort(): 리스트를 오름차순으로 정렬 (기본값).
reverse(): 리스트 순서를 뒤집음.
python
numbers = [3 , 1 , 4 , 1 , 5 ] numbers.sort() # [1, 1, 3, 4, 5] numbers.sort(reverse=True ) # [5, 4, 3, 1, 1] numbers.reverse() # [1, 1, 4, 3, 5]
6. 리스트 탐색
index(): 특정 값의 인덱스 반환.
count(): 특정 값의 개수 반환.
python
numbers = [1 , 2 , 3 , 2 , 4 , 2 ] print (numbers.index(2 )) # 1 (첫 번째 2의 인덱스) print (numbers.count(2 )) # 3 (2의 개수)
7. 리스트 복사
얕은 복사(shallow copy): copy() 또는 슬라이싱 사용.
깊은 복사(deep copy): copy 모듈의 deepcopy() 사용.
python
original = [1 , 2 , 3 ] shallow_copy = original.copy() deep_copy = original[:] # 동일 결과
8. 리스트의 길이
리스트의 요소 개수는 len()으로 확인할 수 있습니다.
python
fruits = ["apple" , "banana" , "cherry" ] print (len (fruits)) # 3
9. 리스트와 반복문
리스트는 반복문과 함께 자주 사용됩니다.
python
fruits = ["apple" , "banana" , "cherry" ] for fruit in fruits: print (fruit)
10. 리스트 컴프리헨션
리스트를 간단하고 효율적으로 생성하는 방법입니다.
python
# 0부터 9까지의 제곱수를 포함하는 리스트 squares = [x**2 for x in range (10 )] print (squares) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] # 조건부 리스트 컴프리헨션 even_numbers = [x for x in range (10 ) if x % 2 == 0 ] print (even_numbers) # [0, 2, 4, 6, 8]
11. 리스트의 기타 특징
in 연산자 : 특정 요소가 리스트에 존재하는지 확인.
python
print ("apple" in ["apple" , "banana" ]) # True print ("grape" in ["apple" , "banana" ]) # False
리스트 반복 :
python
print ([1 , 2 , 3 ] * 2 ) # [1, 2, 3, 1, 2, 3]
12. 2차원 리스트
리스트 안에 리스트를 포함하여 2차원 이상의 구조를 만들 수 있습니다.
python
matrix = [ [1 , 2 , 3 ], [4 , 5 , 6 ], [7 , 8 , 9 ] ] print (matrix[0 ][1 ]) # 2 (첫 번째 행, 두 번째 열)
요약
파이썬 리스트는 유연성과 기능이 풍부하여 다양한 작업에서 사용됩니다. 리스트의 동작과 메서드를 이해하면 데이터를 효율적으로 관리하고 조작할 수 있습니다. 추가적인 질문이나 실습이 필요하면 알려주세요! 😊
nums = [ 1 , 2 , 3 ]
nums[ 2 ] = 5
nums.append( 6 )
print (nums)
[1, 2, 5, 6]
#리스트, inser(위치, 요쇼)
nums.insert( 2 , 3 )
print (nums)
nums.insert( 3 , 4 )
print (nums)
[1, 2, 3, 5, 6]
[1, 2, 3, 4, 5, 6]
nums = [ 1 , 2 , 3 , 4 , 5 , 6 ,]
nums.pop()
print (nums)
[1, 2, 3, 4, 5]
nums = [ 1 , 2 , 3 , 4 , 5 , 6 ,]
nums.pop()
print (nums)
print (nums.pop())
print (nums)
[1, 2, 3, 4, 5]
5
[1, 2, 3, 4]
#리스트.remove(요소)
str = [ "A" , "B" , "C" ]
str .remove( "C" )
print ( str )
['A', 'B']
#리스트.remove(요소)
str = [ "A" , "B" , "C" ]
str .remove( "C" )
print ( str )
hw = list ( "Hellow World" )
while "l" in hw :
hw.remove( "l" )
# hw2 = []
# for n in hw :
# if n != "l" :
# hw2.append(n)
# print(hw2)
print (hw)
# print(list("Hello World").remove("H"))
['A', 'B']
['H', 'e', 'o', 'w', ' ', 'W', 'o', 'r', 'd']
list_num = [ 2 , 7 , 5 , 3 ]
print (list_num)
list_num2 = sorted (list_num)
print (list_num2)
[2, 7, 5, 3]
[2, 3, 5, 7]
list_num = [ 2 , 7 , 5 , 3 ]
print (list_num)
list_num2 = sorted (list_num)
print (list_num2)
list_num.sort()
print (list_num)
list_num.sort(reverse= True )
print (list_num)
list_num.reverse()
print (list_num)
[2, 7, 5, 3]
[2, 3, 5, 7]
[2, 3, 5, 7]
[7, 5, 3, 2]
[2, 3, 5, 7]
print ( 2 in list_num)
print ( 5 not in list_num)
True
False
"abc"
list ( "abc" )
list_abc = [ "a" , "b" , "c" ] # list("abc")
print ( "" .join(list_abc))
print ( "+" . join(list_abc))
list_abc.reverse()
print ( "" .join(list_abc))
abc
a+b+c
cba
응용문제
파이썬 list,문자열을 사용한 문제풀이 [현재 만원을 가지고 있고, 금액을 사용해서 0원으로 만들어, 반복문을 탈출해야 합니다.] *사용하는 금액은 현재 금액보다 더 클 수 없고 0이하의 금액도 사용할 수 없습니다. *잔액도 금액을 쓸때마다 출력해야함
ChatGPT
아래는 주어진 조건을 만족하는 문제 풀이 코드입니다:
문제 풀이 코드
python
# 초기 금액 balance = 10000 # 반복문 시작 while balance > 0 : # 사용자 입력 amount = int (input (f"현재 잔액은 {balance} 원입니다. 사용하려는 금액을 입력하세요: " )) # 조건 체크 if amount > balance: print ("사용하려는 금액이 잔액보다 큽니다. 다시 입력하세요." ) elif amount <= 0 : print ("0 이하의 금액은 사용할 수 없습니다. 다시 입력하세요." ) else : # 금액 사용 balance -= amount print (f"금액 {amount} 원을 사용했습니다. 남은 잔액은 {balance} 원입니다." ) # 잔액이 0원이 되었을 때 print ("잔액이 0원이 되어 반복문을 종료합니다." )
코드 설명
초기 잔액 설정 :잔액을 10000으로 설정합니다.
python
balance = 10000
반복문 :
while balance > 0: 잔액이 0보다 클 때까지 반복합니다.
매 반복마다 사용자에게 금액을 입력받습니다.
입력 조건 확인 :
잔액 초과 : 입력 금액이 현재 잔액보다 클 경우 오류 메시지를 출력하고 다시 입력받습니다.
0 이하 금액 : 입력 금액이 0 이하일 경우 오류 메시지를 출력합니다.
잔액 업데이트 :
조건을 만족하는 금액을 입력받으면 잔액에서 입력 금액을 차감하고 현재 남은 잔액을 출력합니다.
종료 메시지 :
잔액이 0원이 되면 반복문이 종료되고 메시지를 출력합니다.
실행 예시
yaml
현재 잔액은 10000 원입니다. 사용하려는 금액을 입력하세요: 2000 금액 2000 원을 사용했습니다. 남은 잔액은 8000 원입니다. 현재 잔액은 8000 원입니다. 사용하려는 금액을 입력하세요: 3000 금액 3000 원을 사용했습니다. 남은 잔액은 5000 원입니다. 현재 잔액은 5000 원입니다. 사용하려는 금액을 입력하세요: 6000 사용하려는 금액이 잔액보다 큽니다. 다시 입력하세요. 현재 잔액은 5000 원입니다. 사용하려는 금액을 입력하세요: 5000 금액 5000 원을 사용했습니다. 남은 잔액은 0 원입니다. 잔액이 0 원이 되어 반복문을 종료합니다.
코드 확장 가능성
입력 오류 처리 : try-except로 숫자가 아닌 값을 입력했을 때의 처리를 추가할 수 있습니다.
자동 사용 금액 결정 : 사용자가 입력하지 않고, 자동으로 금액을 차감하도록 변경할 수 있습니다.
로그 저장 : 사용된 금액과 잔액을 리스트에 저장해 이력을 출력하도록 확장 가능합니다.
나의 말:
보관할 과일의 개수를 입력받고, 그 개수만큼 리스트에 과일명을 입력하고, 마지막으로 입력한 과일들을 출력하면 됩니다. * 빈 리스트에 append()로 추가가 가능 *대괄호 없이 과일들을 출력해주세요 1. for문으로 하나씩 출력하기 2. join으로 한번에 출력하기
ChatGPT의 말:
아래는 주어진 조건을 만족하는 두 가지 방법의 코드를 작성했습니다.
문제 풀이 코드
python
# 과일 리스트 초기화 fruits = [] # 과일 개수 입력받기 num_fruits = int (input ("보관할 과일의 개수를 입력하세요: " )) # 과일 이름 입력받아 리스트에 추가 for _ in range (num_fruits): fruit = input ("과일 이름을 입력하세요: " ) fruits.append(fruit) # 1. for문으로 하나씩 출력하기 print ("\n[for문으로 하나씩 출력]" ) for fruit in fruits: print (fruit) # 2. join으로 한번에 출력하기 print ("\n[join으로 한번에 출력]" ) print (" " .join(fruits))
코드 설명
빈 리스트 초기화 :과일명을 저장할 빈 리스트를 생성합니다.
python
fruits = []
과일 개수 입력 :사용자가 보관할 과일의 개수를 입력합니다.
python
num_fruits = int (input ("보관할 과일의 개수를 입력하세요: " ))
리스트에 과일명 추가 :for 반복문을 사용해 입력받은 과일명을 리스트에 추가합니다.
python
for _ in range (num_fruits): fruit = input ("과일 이름을 입력하세요: " ) fruits.append(fruit)
출력 방법 1: for 문으로 하나씩 출력 :리스트의 각 요소를 반복하며 하나씩 출력합니다.
python
for fruit in fruits: print (fruit)
출력 방법 2: join으로 한번에 출력 :join() 메서드를 사용해 리스트 요소들을 공백(" ")으로 연결해 한번에 출력합니다.
python
print (" " .join(fruits))
실행 예시
입력
보관할 과일의 개수를 입력하세요: 3 과일 이름을 입력하세요: 사과 과일 이름을 입력하세요: 바나나 과일 이름을 입력하세요: 포도
출력
csharp
[for문으로 하나씩 출력 ] 사과 바나나 포도 [join으로 한번에 출력 ] 사과 바나나 포도
응용 가능성
과일 이름을 중복 없이 추가하려면, 입력 전에 if fruit not in fruits: 조건을 추가할 수 있습니다.
입력된 과일명을 알파벳 순서로 정렬하려면 fruits.sort()를 사용하면 됩니다.
다른 구분자를 사용하려면 join() 메서드의 인수로 ", " 또는 " | " 등을 사용할 수 있습니다.
# 초기 금액
balance = 10000
# 반복문 시작
while balance > 0 :
# 사용자 입력
amount = int ( input ( f "현재 잔액은 {balance} 원입니다. 사용하려는 금액을 입력하세요: " ))
# 조건 체크
if amount > balance:
print ( "사용하려는 금액이 잔액보다 큽니다. 다시 입력하세요." )
elif amount <= 0 :
print ( "0 이하의 금액은 사용할 수 없습니다. 다시 입력하세요." )
else :
# 금액 사용
balance -= amount
print ( f "금액 {amount} 원을 사용했습니다. 남은 잔액은 {balance} 원입니다." )
# 잔액이 0원이 되었을 때
print ( "잔액이 0원이 되어 반복문을 종료합니다." )
# 과일 리스트 초기화
fruits = []
# 과일 개수 입력받기
num_fruits = int ( input ( "보관할 과일의 개수를 입력하세요: " ))
# 과일 이름 입력받아 리스트에 추가
for _ in range (num_fruits):
fruit = input ( "과일 이름을 입력하세요: " )
fruits.append(fruit)
# 1. for문으로 하나씩 출력하기
print ( "\n[for문으로 하나씩 출력]" )
for fruit in fruits:
print (fruit)
# 2. join으로 한번에 출력하기
print ( "\n[join으로 한번에 출력]" )
print ( " " .join(fruits))
# 과일 리스트 초기화
fruits = []
# 과일 개수 입력받기
num_fruits = int ( input ( "보관할 과일의 개수를 입력하세요: " ))
i = 0
# 과일 이름 입력받아 리스트에 추가
for _ in range (num_fruits):
i+= 1
fruits.append( input ( f ' {i} 번째 과일 이름을 입력하세요: ' ))
# 1. for문으로 하나씩 출력하기
print ( "[for문으로 하나씩 출력]" )
for fruit in fruits:
print ( f ' {fruit} ' ,end= " " )
# 2. join으로 한번에 출력하기
print ( "\n[join으로 한번에 출력]" )
print ( " " .join(fruits))