1. 출력
- 파이썬으로 화면에 결과물을 출력하기 위해서는 print()함수를 사용해야 합니다.
- 파이썬 GUI 프로그래밍이 아닐 경우 print()출력을 사용하며 디버깅을 위한 오류출력에도 자주 사용됩니다.
1) 문자열 출력
- 문자열을 출력할 시 괄호 안에 ""(큰따옴표), ''(작은따옴표)를 넣고 그 안에 문자를 입력합니다.
ex) print("Hello World")
print('Hello World')
- 작은따옴표 안에 큰따옴표를 넣어서 단어나 문구를 강조할 수 있습니다.
- 반대로 큰따옴표 안에 작은따옴표를 넣어서 단어나 문구를 강조할 수 있습니다.
ex) print("My 'age' is 28")
print('My "age" is 28')
- 출력문 안에 \n을 삽입하여 줄바꿈을 할 수 있습니다.
ex) print("Hello World\nHello")
* 위 코드를 입력하여 출력하면 다음과 같은 결과가 화면에 출력됩니다.
> Hello World
Hello
- 문자열들을 + 기호를 이용해 문자열을 합칠 수 있습니다.
ex) print("Hello" + "red")
> Hellored
- 문자열 사이에 공백을 추가하여 공백까지 출력 할 수 있습니다.
ex) print("Hello" + " " + "red")
> Hello red
1-1 실습예제
Exercise)
print(Day 1 - String Manipulation")
print("String Concatenation is done with the "+" sign.")
print('e.g. print("Hello " + "world")')
print(("New lines can be created with a backslash and n.")
위 예제들을 바탕으로 다음과 같은 문장이 출력되도록 하는 코드를 작성해 보겠습니다.
Day 1 - String Manipulation
String Concatenation is done with the "+" sign.
e.g. print("Hello " + "world")
New lines can be created with a backslash and n.
Solution)
print("Day 1 - String Manipulation")
print('String Concatenation is done with the "+" sign.')
print('e.g. print("Hello " + "world")')
print("New lines can be created with a backslash and n.")
- 1번 문장은 문장이 시작되는 Day 1 앞부분에 ""(큰따옴표)가 빠져있으므로 추가하여 수정합니다.
- 2번 문장은 중간쯤에 "+"가 있는데 이 부분도 문자열로 출력되게 해야합니다. 따라서 전체 문장을 감싸는 ""(큰따옴표)를 사용하게 되면 ""(큰따옴표가) 2번 나오게 되서 문법오류가 발생하게 됩니다.
- 이 문제를 해결하기 위해서 전체 문장을 ''(작은따옴표)로 감싸면 "+"이 부분까지 문자열로 출력됩니다.
- 3번 문장은 들여쓰기가 되어있어서 문법적인 오류가 발생합니다 파이썬에서는 들여쓰기를 잘못해도 오류가 발생합니다. 따라서 들여쓰기를 제거하여 코드를 수정합니다.
- 4번 문장은 print()함수에 괄호가 하나 더 있으므로 오류가 발생합니다. 괄호를 하나 지워서 코드를 수정합니다.
2. 입력함수
- 입력함수는 input()함수를 사용하여 사용자로부터 입력을 받는 함수입니다.
- input()함수가 호출되면 명령 프롬프트로부터 사용자의 입력을 받을 수 있습니다.
- input()함수의 반환으로 사용자가 입력한 것을 "문자열" 타입으로 반환하게 됩니다.
- 입력은 엔터가 입력될 때까지 타이핑한 문자를 모두 받는다.
1) 실습예제
Exercise)
사용자의 이름을 입력받아 이름의 철자 개수를 출력하는 코드를 만드세요.
ex) red
> 3
Solution)
print(len(input("Waht is your name?")))
- 먼저 input()함수로 사용자의 이름을 입력받고 len()함수로 이름의 철자 개수를 출력하게 합니다
* len()함수는 문자열의 길이를 알려주는 함수입니다.
3. 변수
- 변수란 '변할 수 있는것'으로 어떠한 값을 담는 '상자'라고 생각하면 됩니다.
- 예를 들어 a=10이라고 하는것은 10을 a라고 하는 상자에 담아줘 라는 의미입니다.
1) 변수 이름
변수를 선언할때 변수의 이름은 마음대로 지어도 되지만 몇 가지 지켜야할 규칙이 있다.
- _혹은 영문자로 시작해야 합니다.
- 숫자로 시작할수 없습니다.
- 특수문자(+,-,%,^)는 사용할 수 없습니다.
- 변수 이름에 공백이 있으면 안됩니다.
- 파이썬의 예약어(for,while,if등)는 사용할 수 없습니다.
2) 실습예제
Exercise)
a = input("a: ")
b = input("b: ")
print("a: " + a)
print("b: " + b)
위 코드는 수정하지 않고 중간 공백에 코드를 추가하여 a는b값, b는a값으로 출력되게 만드세요.
Solution)
a = input("a: ")
b = input("b: ")
c = b
b = a
a = c
print("a: " + a)
print("b: " + b)
- 이 문제는 약간의 창의적인 생각 필요합니다.
- 먼저 c라는 변수를 만들어 b값을 미리 c에 담아둡니다.
- 그 다음 b에는 a값을 담고, a에는 아까 미리 담아두었던 c값을 담습니다.
- 이렇게 하는 이유는 b=a, a=b로 코드를 짤 경우로 예를 들겠습니다.
- 만약 a값을 3으로 입력받고 하고 b를 5로 입력받았다 하면
b=3
a=b(b의 값을 5로 입력받았지만 위 코드가 실행되면서 b라는 변수에는 3이라는 값으로 바뀌게 됩니다)
따라서
b=3
a=3
- 이런 결과가 출력되기 때문에 c라는 변수를 새롭게 만들어 미리 입력받은 b의 값을 담아두는것입니다.
그렇게 되면 입력값이 a=3 b=5일때
c=5
b=3
a=5
이런 과정을 거치게 되어 결과적으로 출력될때 a와b의 값이 바뀌어서 출력되게 됩니다.
3. 밴드명 생성하기
- 이번에는 사용자의 정보들을 입력받아서 입력값으로 밴드명을 정해주는 프로그램을 만들어 보겠습니다.
1) 실습 예제
Exercise)
#1. Create a greeting for your program.
#2. Ask the user for the city that they grew up in.
#3. Ask the user for the name of a pet.
#4. Combine the name of their city and pet and show them their band name.
#5. Make sure the input cursor shows on a new line:
- 1번 라인에는 프로그램의 소개를 출력합니다.
- 2번 라인은 사용자의 자란 도시를 입력받게 합니다.
- 3번 라인은 사용자의 애완동물 이름을 입력받습니다.
- 4번 라인은 입력받은 도시와 애완동물 이름을 조합하여 밴드 이름을 출력합니다.
- 단 조건으로 입력받을때 커서가 문장옆이 아닌 바로 아래줄에서 깜빡거리도록 합니다.
Solution)
print("Welcome to the band name generator")
city = input("Where is your grew up in city?\n")
pet = input("What is your pet name?\n")
print("Your band name is " + city + " " + pet)
- 1번 라인은 프로그램 소개문장을 print()함수로 출력합니다.
- 2번 라인은 city라는 변수를 선언하고 input()함수로 사용자의 자란 도시를 입력받습니다. 단 문장 옆이 아닌 아래에서 입력받아야 되므로 \n을 삽입하여 개행까지 합니다.
- 3번 라인은 2번 라인과 비슷하게 pet이라는 변수를 선언하고 input()함수로 애완동물의 이름을 입력받습니다. 마찬가지로 \n을 삽입하여 개행도 해줍니다.
- 마지막으로 입력받은 city, pet 변수를 이용해 조합하여 밴드 이름을 만들어주면 완성입니다.
'Python Study' 카테고리의 다른 글
Python Study(반복문(for)) (0) | 2023.02.05 |
---|---|
Python Study(리스트/중첩 리스트) (0) | 2023.02.01 |
Python Study(random모듈) (0) | 2023.02.01 |
Python Study(조건문/중첩 조건문/논리 연산자) (0) | 2023.01.26 |
Python Study(데이터 형식/연산자/F-String) (0) | 2023.01.25 |