본문 바로가기
파이썬(Python)

파이썬(Python) 기본 문법

by 부캐 활용 IT 2023. 3. 9.
반응형

print문

print("hello")
print('hello')               # "과 동일하다

print("hello \"Python\"")    # "Python"을 출력하려면 이스케이프 문자(\)을 사용하거나 ", '를 서로 다른게 감싸준다
print("hello 'Python\'")
print('hello "Python"')

print("hello\nPython")       # \n은 줄바꿈
print("hello\tPython")       # \t은 수평탭

print("hello\\Python")       # \표시

print("""hello
                 Python""")  # 여러줄 표시
                 
                 
                 
결과
hello
hello
hello "Python"
hello 'Python'
hello "Python"
hello
Python
hello	Python
hello\Python
hello
                 Python

 

 [인덱스]을 사용하여 인덱싱한 문자를 선택할 수 있다.

 [:]을 사용하여 인덱싱한 문자를 슬라이싱할 수 있다.

print("hello"[0])   # 인덱스는 0부터 시작한다  
print("hello"[1]) 
print("hello"[2])
print("hello"[3])
print("hello"[4])

print("hello"[-1])  # 음스로 표시하면 뒤에서 부터 인덱싱된다
print("hello"[-2])
print("hello"[-3])
print("hello"[-4])
print("hello"[-5])

print("hello"[1:3]) # 1부터 3보다 작은것까지 슬라이싱한다 


결과
h
e
l
l
o

o
l
l
e
h

el

주석(Comments)

#    한줄 주석처리

''' 
    여러 줄 주석 처리
'''

 

변수

x = 5       # 변수 x에 값 5를 대입
y = "hello" # 문자열 "hello"를 변수 y에 대입

 

식별자

ptn              # 변수임. 변수는 숫자로 시작할 수 없으며 _ 사용가능함

import datetime  # datetime은 모듈 이름임

print()          # 함수를 의미함. 뒤에 괄호가 있음

PerSon           # 클래스는 캐멀케이스로 표현함, 변수는 스네이크케이스로 표현

BeautifulSoup()  # 클래스를 의미함. 엄밀히 말하면 BeautifulSoup() 생성자임

아래 미리 기능이 정해진 파이썬 키워드는 식별자로 사용할 수 없다.


#함수와 관련된 키워드
def             return           lambda

#조건문과 관련된 키워드
if              elif             else

#논리 연산자와 관련된 키워드
and             or               not

#반복문과 관련된 키워드
for             while            break           continue       in

#예외처리와 관련된 키워드
try             except           finally         raise

#기타
assert          as               class           del
global          is               import          from
pass            nonlocal         with            yield

https://ko.wikipedia.org/wiki/%EC%B9%B4%EB%A9%9C_%ED%91%9C%EA%B8%B0%EB%B2%95

 

카멜 표기법 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전.

ko.wikipedia.org

https://ko.wikipedia.org/wiki/%EC%8A%A4%EB%84%A4%EC%9D%B4%ED%81%AC_%ED%91%9C%EA%B8%B0%EB%B2%95

 

스네이크 표기법 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전.

ko.wikipedia.org

 

데이터 유형

a = 10       # 정수
b = 3.14     # 실수


c = "hello"  # 문자열

d = True     # 부울(Boolean)(참)
e = False    # 부울(Boolean)(참)

 

산술 연산자

a + b   # 더하기    문자열+문자열을 사용하면 문자열을 결합해준다
a - b   # 빼기
a * b   # 곱하기    문자열*숫자를 사용하면 문자열 숫자만큼 반복해준다
a / b   # 나누기

a // b  # 몫(정수 나누기)
a % b   # 나머지(Modulus)
a ** b  # 제곱
print("hello"+"Python")
print("hello"*3)


결과
helloPython
hellohellohello

비교 연산자

a == b   #같다
a != b   #같지 않다 
a > b    #크다(초과)
a < b    #작다(미만)
a >= b   #크거나 같다(이상)
a <= b   #작거나 같다(이하)

 

논리 연산자

a and b   # 그리고, 이고
a or b    # 또는, 이거나 
not a     # 아니다

 

복합 대입 연산자

연산자                                 예시                                                            같은 표현

+= x += 1 x = x + 1
-= x -= 1 x = x - 1
*= x *= 2 x = x * 2
/= x /= 2 x = x / 2
//= x //= 2 x = x // 2
%= x %= 2 x = x % 2
**= x **= 2 x = x ** 2
&= x &= 2 x = x & 2
|= x |= 2 x = x
^= x ^= 2 x = x ^ 2
>>= x >>= 2 x = x >> 2
<<= x <<= 2 x = x << 2

 

조건문

x = 5

if x > 0:                        #조건
    print("x is positive")

 

x = -5

if x > 0:
    print("x is positive")
else:
    print("x is not positive")

 

if x > 5:
    print("x is greater than 5")
elif x < 5:
    print("x is less than 5")
else:
    print("x is equal to 5")

 

cond = 1      # < , > ,  == , != , >= ,  <= , and , or , not ,  & , | , in  , not in
if cond:
  print(True)
else:
  print(False)

 

cond = 1    
if cond:
  pass                          #break 사용 가능  #c언어의 continue 동일     
else:
  print(False)

 

반복문(for)

# For loop
for i in range(5):   #0 ~ 4
    print(i)

 

sum=0
for i in range(1,11):   # 1<= i <11
  print(i)
print(sum)

 

fruits = ["apple", "banana", "cherry"]

for fruit in fruits:
    print(fruit)
apple
banana
cherry

 

#1~10까지 합계구하기

sum=0   
for i in range(1,11):  
  sum=sum+i
print(sum)

 

numbers = [1, 2, 3, 4, 5]

for num in numbers:
    if num % 2 == 0:
        print(num, "is even")
    else:
        print(num, "is odd")
1 is odd
2 is even
3 is odd
4 is even
5 is odd
fruits = ["apple", "banana", "cherry"]
colors = ["red", "yellow", "black"]

for fruit, color in zip(fruits, colors):
                #zip() 함수는 두 개의 리스트를 인자로 받아 
                #각 리스트의 같은 인덱스에 위치한 값들을 묶어서 새로운 튜플을 생성하는 이터레이터를 반환
    print(fruit, "is", color)
apple is red
banana is yellow
cherry is black

 

for i in range(2,10):
  for j in range(1,10):
    #print(i,"*",j,"=",i*j)
    print(f"{i}*{j}={i*j:2d}", end="   ")
  print("")
  
  
결과
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

 

반복문(while)

# While loop
i = 0
while i < 5: # 조건식이 참일 동안 실행할 코드
    print(i)
    i += 1
0
1
2
3
4

 

list=[1,2,3,4]
while list:
  list.pop()
  print(list)
  
결과
[1, 2, 3]
[1, 2]
[1]
[]

 

total = 0

while True:      #무한 반복
    num = int(input("정수를 입력하세요 (0을 입력하면 종료): "))
    if num == 0:
        break   #입력 받은 값이 0이면 break 문을 사용하여 while 루프 종료
    total += num

print("입력 받은 정수의 합:", total)

 

함수(Functions)

def 함수이름(매개변수):
    # 함수의 기능 구현
    return 반환값

 

def print_hello():
    print("Hello, World!")
    
print_hello()   # 출력 결과: "Hello, World!"

 

def add_numbers(x, y):
    return x + y

z = add_numbers(3, 4)  # z = 7

print(add_numbers(3, 5))  # 출력 결과: 8

 

def add_numbers(*args):  # 가변매개변수 *args를 사용하여 여러 개의 인자를 전달 (튜플 형태로 저장)
    total = 0
    for num in args:
        total += num
    return total
    
print(add_numbers(1, 2, 3, 4, 5))    # 출력 결과: 15

 

def sum_num1_num2(num1, num2):
    result = 0
    for i in range(num1, num2+1):
        result = result+i
    return result
    
print(sum_num1_num2(1,100))  #결과 5050

 

def factorial(n):
  result = 1
  for i in range(1, n+1):
    result *= i
  return result

print(factorial(1))  # 팩토리얼 구하기
print(factorial(2))
print(factorial(3))
print(factorial(4))
print(factorial(5))

#결과
1
2
6
24
120
반응형

댓글