728x90
반응형
지난 시간 리뷰문제

# (REVIEW 1) 1개의 각도를 입력받아, 예각 (0-90), 직각 (90), 평각 (180), 둔각 (90 초과 ~ 180 미만) 으로 분류

angle= int(input("각도 입력하세요: "))
if  0 < angle <90:
    print("예각입니다")
elif   angle == 90:
    print ("직각입니다")
elif    angle == 180:
    print ("평각입니다")
elif 90 < angle < 180:
    print ("둔각입니다")
else: print ("180도 초과입니다")

# (REVIEW 2) 
# # 테마파크 입장권과 놀이기구 이용 패키지
# # 입장권 종류 1~3과 나이를 입력 받고, 패키치에 따라 가격 계산
# # 1. 일반 입장권 50000
# # 2. 프리미엄 입장권 75000
# # 3. VIP 입장권 100000
# # 나이에 따른 할인율
# # 12세 미만 50% 할인
# # 65세 이상 30% 할인

park = {
    1: {
        'name': '일반 입장권',
        'price': 50000
    },
    2: {
        'name': '프리미엄 입장권',
        'price':75000
    },
    3: {
        'name':'VIP 입장권',
        'price':100000
    }
}
name_choice = int(input("파크 고르세요! (1 일반 2 프리미엄 3 VIP) :  "))
age = int(input("나이 :"))
if age <= 12:
    print(f"총 이용 요금은 {park[name_choice]['price']*.5} 입니다")
elif age >= 65:
    print(f"총 이용 요금은 {park[name_choice]['price']*.3} 입니다")
else:
    print(f"총 이용 요금은 {park[name_choice]['price'] * 1} 입니다")

# (REVIEW 3) 0~10,000까지의 랜덤을 숫자를 담고 있는 6개의 정수를 담고 있는 리스트 출력

import random

num= []
for x in range (6):                          #6개 추출
    number=random.randint(0,10001)     #0~10000까지를 랜덤 추출
    num.append(number)
    num.sort()                           #오름차순 정렬
    print(num)

 

본 수업

 # (for 기본) for x in "단어" 입력시 알파벳별 나열된다

for x in "icecream":
    print(x)           # i c e c r e a m

# (for 활용) 텍스트를 입력하고, 소문자를 대문자로, 대문자를 소문자로 만들기

# 유저에게 InpUT 받고 -> iNPut 출력
user = input("단어 입력: ")
word = ''
for x in user:
    if x.isupper():
        word = word + x.lower()   # ''+'i' => i
    else:
        word = word + x.upper()   # i + N => iN
print(word)

# (for 활용) 단어 내에 'a' 'e' 가 포함되어 있으면, 없애기 

user = input ("단어 입력: ")
output = ''
#apple
for x in user:
    if x == 'a' or x == 'e':
        output = output
    else:
        output = output + x
        print(output)
#

# (for 활용) 단어 내에 'a' 'e' 'i' 'o' 'u' 가 포함되어 있으면, 없애기 ( pass )

user = input ("단어 입력: ")
output = ''
#apple
for x in user:
    if x in 'aeiou':
        pass
    else:
        output += x
        print(output)         #ppl

# (for 활용) 리스트 내에 있는 단어 수를 가져다가 리스트로 만들기

list=[]
for x in ['사과', '바나나','파인애플']:
    print(len(x))                  #  2   3   4
    list.append(len(x))
print(list)                        # [2,3,4]

 

# (for 활용) 짝수 리스트, 홀수 리스트 만들기

even=[]
odd=[]
evenSum=0
for x in [1,2,3,4,5,6,7,8,9,10]:
    if x % 2 == 0:
        even.append(x)       
    else: odd.append(x)
print(even)         # [2,4,6,8,10]
print(odd)          # [1,3,5,7,9]

# (for 활용) 0 ~ 10,000 까지의 범위에서 100개의 정수 리스트를 받고, 리스트에서 홀수면 'odd' 짝수면 'even'으로 변경하기

import random
List=[]

for x in range (100):
    List.append(random.randint(0,10001))
    print(List)
List.sort()
print(List)

evenoddList= []
for x in List:
    if x % 2 ==1:
        evenoddList.append('odd')
    else:
        evenoddList.append('even')
print(List)             # [30, 450, 523, 534, 627, 735, 971...
print(evenoddList)      # ['even', 'even', 'odd', 'even', 'odd'..

 

for 변수 in (리스트, 문자열 ... ) [ 반복 가능한 객체 ]

for 변수 in enumerate ( )
enumerate( ) 함수는 리스트, 문자열 등을 순회하면서, 각 요소의 인덱스와 값을 동시에 얻을 수 있게 해줌

(enumerate 함수 예시)

device=['아이폰','갤럭시','맥북']
for x,y in enumerate(device):   #enumerate는 요소와 순서를 둘다 알려줌
    print(f"{x}.{y}")  #0.아이폰  #1. 갤럭시 #2. 맥북

 

반응형
728x90
반응형
지난 시간 리뷰
If문을 응용한 리뷰 문제 4가지

#1 숫자를 입력받고, 홀수 또는 짝수인지 알려주는 프로그램

 

num=int(input("숫자 입력: "))
print(num % 2)
if  num % 2 == 1:
    print ("홀수 입니다")
else: print("짝수 입니다")
#2 문자 한개를 입력하고, 알파벳이면 '알파벳입니다', 아니면 '알파벳이 아닙니다'  알려주는 프로그램
if문 & <name.isalpha( ) 활용>
text=(input("문자 입력: "))
print(text.isalpha())
if text.isalpha() == True:         #== True 부분 생략 가능!
    print ("알파벳 입니다")
else:
    print ("알파벳이 아니에요")
#3 비밀번호 설정 프로그램 
- 최소 10자 이상, 
- 영문과 숫자의 조합 필요,
- 특수문자 하나 이상 포함!

pw=(input("비밀번호 입력: "))
if len(pw) < 10:
    print ("최소 10글자 설정해주세요")
elif pw.isalnum() == True:    # pw.isalnum() 은 알파벳/ 혹은 숫자인지 알려준다
    print ("영어와 숫자를 꼭 포함해 주세요")
elif ('!' in pw or '@' in pw or '#' in pw or '$' in pw) == False:
    print("특수문자를 포함해주세요")
else:
    print ("비밀번호 설정 완료!")

#4 버스 요금 계산기
- 사용자로부터 버스 노선의 종류를 나타내는 정수와 승객의 나이를 입력받고, 노선별 요금 알려주기
- 노선별 요금: 1. 시내버스 (1200) 2. 광역버스 (2000) 3. 마을버스 (1000)
- 연령별 할인율: 1. 7세 이하 어린이 (무료) 2. 8-19세 청소년 (30%) 3. 65세이상 노인 (무료)

bus={
    1: {
        'name': '시내버스',
        'price': 1200,
    },
    2: {
        'name': '광역버스',
        'price': 2000,
    },
    3: {
        'name': '마을버스',
        'price': 1000,
    },
}

bus_choice=int(input(f"버스를 선택하세요!: "))
age = int(input("나이를 입력하세요: "))

if age <= 7 or 65 <= age:
    print ("무료 입니다!")
elif 8 <= age and age <=19:
    print (f"{bus[bus_choice]['name']} 노선 요금은 {bus[bus_choice]['price']*0.7} 입니다")
else:
    print(f"{bus[bus_choice]['name']} 노선 요금은 {bus[bus_choice]['price']} 입니다")

 

Random
파이썬에서 random 모듈은 난수를 생성하는 데 사용되며, 다양한 종류의 난수 생성 함수를 제공함. 이 모듈은 게임, 시뮬레이션, 테스팅, 보안 및 기타 많은 분야에서 활용 됨. 다음과 같은 주요 함수들이 포함 됨:
1. randint(a,b): a와 b 사이의 랜덤한 정수를 반환
2. random(): 0과 1 사이의 랜덤한 실수를 반환
3. choice(seq): 주어진 시퀀스 (리스트, 튜플 등)에서 랜덤한 요소를 반환
4. shuffle(x [,random]): 시퀀스 요소들을 무작위로 섞음 
#random test

import random

print(random.randint(0,100))          #randint는 랜덤하게 정수 뽑기임(0부터 100까지)
print(random.random())                      #0~1 사이의 실수 뽑기임

fruits = ['사과','망고','바나나','멜론']
print(random.choice(fruits))                #fruits에서 랜덤 뽑기
random.shuffle(fruits)                            #리스트를 넣고 shuffle하기
print(fruits)

 

반복문 For 문 
반복문은 프로그램에서 같은 코드 도는 일련의 코드를 반복 실행하는 구조. 
반복문을 사용하면, 동일한 작업을 여러번 수행하도록 컴퓨터에 지시할 수 있음
for 변수 in range (n)
Range()함수
1. 한 매개변수를 가질 때 (range(stop#))
- 0부터 stop-1 까지의 숫자를 생성
- 예) range (5)는 0,1,2,3,4를 생성
2. 두 매개변수를 가질 때 (range(start,stop))
- start부터 stop-1까지의 숫자를 생성
- 예) range (2,5)는 2,3,4를 생성
3. 세 매개변수를 가질 때 (range(start,stop,step))
- start부터 시작해서 stop-1까지, step만큼의 간격으로 숫자를 생성
- 예) range (2,10,2)는 2,4,6,8을 생성

(활용예시)

# #유저에게 n번째까지의 정수를 받고, m 의 정수를 받으면
# # 0~n 까지의 m 의 공배수의 총합을 나타내는 프로그램
num=int(input("n번째까지의 정수 입력: "))
mul=int(input("m의 공배수: "))
sum=0
for x in range (num+1):
    if x % mul ==0:
        sum += x
        print(f"총합: {sum}")

#for 함수 시작지점 다르게

for x in range (2,10):          #0부터 말고, 2부터! 9까지!
    print(x)

(응용예시)

#0~10,000까지의 랜덤을 숫자를 담고 있는 6개의 정수를 담고 있는 리스트 출력
import random
print(random.randint(0,10000))
numbers= []
for x in range (0,10):
    number=random.randint(1,10001)
    numbers.append(number)
    print(numbers)
반응형
728x90
반응형
Dict를 활용한 응용예시
# #2 영화 예매 프로그램 (dict)활용
# #영화 종류를 나타내는 정수 1~3과 나이 입력, 영화와 가격은 다음과 같이 설정. 총 계산 출력
# #1: 액션영화 10,000원
# #2: 로맨틱 코미디 8,000원
# #3: 공포영화 9,000원
# #팝콘종류
# #1: 치즈팝콘 6,500원
# #2: 캬라멜 팝콘 5,000원
# #3: 일반 팝콘 5,000원

#[class]
cgv={
    'movie':{
        'movieList': ['1.액션영화','2.로맨틱코미디','3.공포영화'],
        'moviePrice':[10000,8000,9000]
    },
    'popcorn':{
        'popcornList': ['1.치즈팝콘','2.캬라멜팝콘','3.일반팝콘'],
        'popcornPrice':[6000,5000,5000]
    }
}

movie_choice=int(input(f"영화를 고르세요 [{cgv['movie']['movieList']}: "))-1
popcorn_choice=int(input(f"팝콘을 고르세요 [{cgv['popcorn']['popcornList']}: "))-1

print(f"고르신 영화는 {cgv['movie']['movieList'][movie_choice]}, 선택한 팝콘은 {cgv['popcorn']['popcornList'][popcorn_choice]}이며, "
      f"총 금액은 {cgv['movie']['moviePrice'][movie_choice]+cgv['popcorn']['popcornPrice'][popcorn_choice]}원 입니다")

 

Dict의 주요 기능
1. get (key, default=None)
 - 특정 키에 해당하는 값을 반환
 - 키가 사전에 없는 경우, default 값이 반환됨 (기본값은 None)
2. Keys()
 - 사전의 모든 키를 포함하는 뷰를 반환
3. values()
 - 사전의 모든 값을 포함하는 뷰를 반환
4. items()
 - 사전의 모든 키-값 쌍을 튜플로 포함하는 뷰를 반환
megastudy = {
    'python': [1,2,3],
    'java':[1,3,5],
    'c':[2,4,6]
}

#python의 날짜를 가져오는 방법
#1. megastudy['python']       <-연산자
#2. megastudy.get('python')   <-기능
#3. megastudy.get('javascript','수업 없음')  <- 없으면 '수업 없음' 으로 대체


print(megastudy.keys())    #dict_keys(['python', 'java', 'c'])
print(list(megastudy.keys()))    #['python', 'java', 'c']
print(list(megastudy.values()))  #[[1, 2, 3], [1, 3, 5], [2, 4, 6]]
print(list(megastudy.items()))   #[('python', [1, 2, 3]), ('java', [1, 3, 5]), ('c', [2, 4, 6])]

 

 

세트 (Set) : 중복을 허용하지 않는 순서가 없는 요소들의 컬렉션,
세트는 수학에서의 집합과 유사하며, 주로 데이터의 중복을 제거하거나 여러 세트 간의 관계 (교집합, 합집합 등)을 다룰 때 유용함 

 

세트의 기본 
 - 세트 생성: setA = {1,2,3,'hello'}
 - 빈세트 생성: emptysetA = set()    *{}는 빈 딕셔너리를 만듬
 - 리스트나 튜플 등에서 세트 생성: setA = set([1,2,3,3])   #결과: {1,2,3}

(set 예시)

#set (집합) 중복 안됨
a = {1,2,3,1,2,3,1,2,3}
print(a)    #{1,2,3}
b = set([1,2,3,1,2,3,4])   #set화 시키기
print(b)    #{1,2,3,4}

 

세트의 주요 메소드
1. 추가와 업데이트
  - add: 세트에 요소 추가
  - update: 다른 세트의 요소를 현재 세트에 추가
2. 제거
  - discard: 지정된 값을 가진 요소 제거
  - clear: 세트의 모든 요소를 제거
b = set([1,2,3,1,2,3,4])
b.add(1)
b.add(5)
b.discard(3)
print(b) #{1, 2, 4, 5}
b.clear()
print(b)  #set()
a = {5,6,7}
3. 세트의 기능 
- union (합집합)
예) my_set.union({7,8})
- intersection (교집합)
예) my_set.intersection({1,2,9})
- difference (차집합)
예) my_set.difference({1,2})
- symmetric_difference (대칭 차집합) (교집합을 뺀 애들)
예) my_set.symmetric_difference({1,2,7})

(if 예시)

num=int(input("정수 입력:"))
if num > 0 :
    print('양의 정수 입니다.')
elif num == 0:
    print('0입니다')
else:
    print('0 또는 음의 정수 입니다.')

(다중 elif 예시 1)

#유저에게 영어점수 입력 받고,
#100~90 A 입니다
#90~80 B 입니다
#80~70 C 입니다
#70 미만이면 재수강입니다

grade=int(input("영어점수는: "))
if grade > 90 :
    print ('A 입니다')
elif grade > 80 :
    print ('B 입니다')
elif grade > 70:
    print ('C 입니다')
else:
    print (' 재수강 입니다')

 

(파이썬 다중 if 예시 2)

#유저에게 비밀번호 설정 입력받고,
# 8글자보다 작으면 비밀번호가 8글자 이하입니다!
#만약에 비밀번호에 !없으면 특수문자가 없습니다.
# 다 통과 되면 비밀번호 완료!

pw=input("비밀번호 입력:")
print(pw.find("!"))

if len(pw) < 8:
    print ("비밀번호가 8글자 이하입니다!")
elif "!" not in pw:
    print ("특수문자가 없습니다")
else: print ('비밀번호 통과!')

 

(파이썬 다중 if 예시 3)

#유저에게 정수를 입력받고
#양의 홀수인지, 양의 짝수, 0, 음의 홀수, 음의 짝수 인지 알려주는 프로그램 만들기


if num > 0:
    if num % 2 != 0:
        print("양의 홀수")
    else:
        print("양의 짝수")
elif num == 0:
    print("0 입니다.")
else:
    if num % 2 != 0:
        print("음의 홀수")
    else:
        print("음의 짝수")
반응형
728x90
반응형
#일본여행 계획 프로그램
#유저에게 쉼표 시준으로 할 계획을 입력받고, 할일을 나타내는 프로그램
#일본여행 계획: 초밥먹기,돈키호테 가기,온천가기
#결과: 일본여행 계획표는 [초밥먹기, 돈키호테 가기, 온천가기] 입니다!
plan=str(input("일본여행 계획:"))
planList=plan.split(",")
print(f"일본여행 계획표는 {planList} 입니다 !")
split과 list를 활용하기

#스타벅스 메뉴 선택
#입력 커피 메뉴 [1. 아메리카노: 4000 2. 라떼: 5000 바닐라라떼: 5500]
#케익메뉴 [1. 치즈케익: 5000 2. 딸기케익: 6000 3. 우유케익: 5500]
#결과 고르신 커피와 케익의 값은 총 ~ 입니다.

choice_coffee=int(input("커피 메뉴: [1. 아메리카노 2. 라떼 3. 바닐라라떼]"))-1
choice_cake=int(input("케익 메뉴: [1. 치즈케익 2. 딸기케익 3. 우유케익]"))-1
coffee=[4000,5000,5500]
cake=[5000,6000,5500]

print(f"고르신 커피와 케익의 값은 총 {coffee[choice_coffee]+cake[choice_cake]}")

 

Python의 리스트 연산자들:
1. 덧셈 (+): 두 개의 리스트를 연결
2. 곱셈 (*): 리스트를 주어진 횟수만큼 반복
3. in 연산자: 특정 요소가 리스트에 있는지 확인. 요소가 있으면 True, 없으면 False를 반환
4. not in 연산자: 특정 요소가 리스트에 없는지 확인. 요소가 없으면 True, 있으면 False를 반환
5. 슬라이싱 ([:]): 리스트의 일부분을 잘라내어 새로운 리스트를 생성
#* 연산자
#*: int * int (사칙연산)
#*: str * str (str을 n번 반복)
#*: list * list (list를 n번 반복)
coffee=['아메리카노','바닐라라떼']
cookie=['화이트쿠키','오레오쿠키','녹차쿠키']
menu=coffee+cookie
print(menu) #['아메리카노', '바닐라라떼', '화이트쿠키', '오레오쿠키', '녹차쿠키']

#in 연산자: boolean 타입변환
print('디카페인' in menu)  #False
print('아메리카노' in menu) #True

#[:] 슬라이싱 연산자
new_menu=menu[0:3] #menu의 0부터 3개를 포함한다
print(new_menu) #['아메리카노', '바닐라라떼', '화이트쿠키']
리스트의 활용과 기능은 아래와 같이 다양하다.
#리스트 기능
#1. 리스트의 길이 확인: len()
store=['cu','gs','seven','ministop']
print(len(store))
#2. 리스트 추가: append()
store.append('emart24')
print(store) #['cu', 'gs', 'seven', 'ministop', 'emart24']
#3. 리스트 추가[몇번째]: insert(몇번째, 무엇을)
store.insert(1,'familymart')
print(store) # ['cu', 'familymart', 'gs', 'seven', 'ministop', 'emart24']
#4. 리스트 제거: remove(무엇을)
store.remove('cu')
print(store)   #['familymart', 'gs', 'seven', 'ministop', 'emart24']
#5. 리스트에서 해당 아이템 위치 찾기: index (무엇을)
print(store.index('ministop'))   #3 (0 - 1 - 2 - 3)
#6. 리스트에서 해당 아이템 몇개 세기: count (무엇을)
print(store.count('emart24'))    #1개
#7. 리스트를 추가: extend (리스트) +[같은 역할]
NewStore=['storyway','buytheway']
store.extend(NewStore)
print(store)    #['familymart', 'gs', 'seven', 'ministop', 'emart24', 'storyway', 'buytheway']
#8. 리스트 정렬: sort()
store.sort()   #알파벳순 정렬
print(store)   # ['buytheway', 'emart24', 'familymart', 'gs', 'ministop', 'seven', 'storyway']
store.sort(reverse=True)   #역알파벳순 정렬
print(store)               #['storyway', 'seven', 'ministop', 'gs', 'familymart', 'emart24', 'buytheway']

 

 

리스트 함수들
1. len(list): 리스트의 길이를 반환
2. list.append(element): 리스트의 끝에 새로운 요소 추가
3. list.insert(index,element): 지정된 인덱스에 요소를 삽입
4. list.remove(element): 리스트에서 첫번째로 나타나는 특정 요소 제거
5. list.index(element): 특정 요소의 인덱스를 반환
6. list.count(element): 리스트에서 특정 요소가 나타나는 횟수를 반환
7. list.sort(): 리스트의 요소들을 정렬
8. list.extend(iterable): 리스트의 끝에 iterable (예:다른 리스트)의 모든 요소를 추가

mbti = {
    'e':'외향적',
    'i':'내향적',
    's':'감각적',
    'n':'직관적',
    'f':'감성적',
    't':'이성적',
    'j':'계획적',
    'p':'즉흥적'}
print(mbti['e'])

#퀴즈 유저에게 mbti 입력받고, 당신은 ~~이고 ~~이고 ~~ 이고 ~~시네요!
user_mbti=input("당신의 mbti는?")
user_mbti1=list(user_mbti)
print(user_mbti1) #['e', 'n', 't', 'p']
print(f"당신은 {mbti[user_mbti1[0]]}이고 {mbti[user_mbti1[1]]}, {mbti[user_mbti1[2]]}, {mbti[user_mbti1[3]]} 이시군요! ")

#당신은 외향적이고 직관적, 이성적, 즉흥적 이시군요! 

 

딕셔너리 (Dictionary)
딕셔너리는 Key와 Value의 쌍으로 이루어진 자료구조임.
Key를 통해 빠르게 Value를 찾을 수 있으며, Key는 각각 고유해야 함. 
마치 실제 사전처럼, Key 와 그에 해당하는 Value의 쌍으로 데이터를 저장.
딕셔너리의 기본
- 사전 생성: my dict = {'name':'alice','age':25}
- 빈 사전 생성: empty_dict = {}
instagram={
    '신촌맛집':['싸다김밥','신촌순댓국','서브웨이'],
    '서강대맛집':{
        '서강대학식':['정식','오늘의치돈','육회덮밥']
    }
}

print(instagram["신촌맛집"])   #['싸다김밥','신촌순댓국','서브웨이']
print(instagram["신촌맛집"][2])  #서브웨이
print(instagram["서강대맛집"]["서강대학식"][1]) #오늘의치돈

 

반응형
728x90
반응형

문자열 함수

- len(): 문자열의 길이를 반환

- str.upper(): 문자열의 모든 문자를 대문자로 변환

- str.lower(): 문자열의 모든 문자를 소문자로 변환

- str.capitalize(): 문자열의 첫문자를 대문자로, 나머지를 소문자로

- str.count('item'): 문자열의 item 의 개수를 변환. 없으면 -1

- str.strip(): 문자열의 앞과 뒤에서 공백과 개행 문자 제거

- str.find(sub): 부분문자열 sub이 시작되는 첫번째 인덱스를 반환. 없으면 -1

- str.replace(old, new): 문자열 내 old를 new로 대체

- str.split(sep): sep를 구분자로 사용하여 문자열을 나누고, 나누어진 부분들을 리스트로 반환

- str.join(iterable): iterable의 각 요소 사이에 문자열을 삽입하여 결합

# print(), input()[str], variable
# int(), str(), float(), bool(), list()
# datatype [int, float, str, list, bool, ...]
# operator 산술 + - * / // % **, 논리 and or not
# 비교 < > <= >= != ==
# 까지 배움!

 

len(): 길이를 알려주는 기능

print(len(coffee)) #9
print(coffee.upper()) #AMERICANO
print(coffee.lower()) #americano
print(coffee.capitalize()) #Americano
print(coffee.strip()) #빈공간 없애기
print(coffee.find('c')) #몇번째에 c가 있니? 5, 없으면 -1
print(coffee.replace('cano','can')) #왼쪽에서 오른쪽으로 바꾸기 american
print(coffee.count(str(f))) #f가 몇개 있는지 카운트
print(coffee.count('f)) #f가 몇개 있는지 카운트

 

# #퀴즈 1: 대소문자 변환 프로그램
# # 소문자로 된 문자열을 받은 후 모두 대문자로 변환하기
 text=str(input("문자 입력:"))
 print(text.upper())

 

#퀴즈 2: Charlie Puth의 노래 "left and right"에서 "left" 와 "right"가 각각 몇번 나오는지를 세는 프로그램 만들기 (대소문자 구분없이)
lyrics="""Oh, I've been hurtin' lately
I'm down on all my luck

 

print(lyrics.count("left"))
print(lyrics.count('right'))
print(f"가사의 길이는 {len(lyrics)}")

 

a="mega"
b="study"
print(a+b) #결과:megastudy
c=a+b #문자열 연결 연산자  결과:megastudy
d=a*3 #문자열 반복 연산자  결과: megamegamega
e=a[0] #문자열 인덱싱  결과:m
f=b[0:3] #[start:end count] 문자열 슬라이싱 결과: stu
g='g' in a #"mega"에서 'g'가 있니? 결과: TRUE or FALSE

 

title = "megastudy python programming"
print(title.split()) #띄어쓰기별 찢어 list로 반환 #['megastudy', 'python', 'programming']

title1 = "orange,apple,banana"
print(title1.split(',')) #','를 넣음으로써 ,를 기준으로 나눔 #['orange', 'apple', 'banana']

 

#(split함수 예시) user한테 이메일 주소를 입력받고, ['유저아이디', '도메인]이 담긴 리스트로 뱉기
email=str(input("이메일 주소 입력:"))

a=email.split('@') #['letsgo','gmail.com']
b=a[1].split('.')  #['gmail','com']

a[1]=b[0] #['letsgo','gmail']
a.append(b[1]) #a 리스트에 [com] 추가하기
print(a) #['letsgo','gmail','com']

 

word= ' '.join(['ice','cream']) #결과: 'ice cream' 으로, 띄어쓰기가 가운데로 감

id=input("아이디 입력:")
domain=input("도메인 입력:")
print('@'.join([id,domain])) #@을 가운데에 넣고 id 와 domain 조인한다. lets@gmail.com

 

반응형
728x90
반응형

Boolean Type
- Boolean 타입은 기본적인 데이터 타입 중 하나로, True 또는 False 의 두가지 값만을 가질 수 있음

형 변환
 - Python에서는 다른 데이터 타입을 불리언으로 변환할 수 있음
 - 대부분의 값은 True로 변환되지만, 일부 "비어있는" 값 또는 "0" 같은 False로 변환됨
 - 예를 들어, bool(), bool("")은 모두 False를 반환

List Type

 - 중복된 요소를 포함할 수 있음
 - 가변적으로, 리스트 내부의 요소 변경 가능
 - 서로 다른 타입의 요소 포함 가능
 - 인덱스를 통한 접근 가능 (예: f[0])

mega = [[1,3,5],[5,6,7],[1,5,9]]
print(mega[0])  #==> [1,3,5] c언어 강의 날짜
print(mega[0][2]) #==> 5 c언어 강의 날짜중 세번째 날짜
#1000 이하의 정수를 입력받고, 분과 시로 환산하는 프로그램
#72이면, 1분 12초
time=int(input("시간:"))
min=time//60
sec=time%60

print(f"{min}분 {sec}초 입니다.")
#정수 10,000~99,999 사이를 입력받고,
#100의 자리 값을 출력하는 프로그램
number=int(input("정수 값:"))
numlist=list(str(number))
print(numlist)   ==> ['1','2','3','4','5']
print(str(number)[2])   ==> 3

#  print(), input(), int(), bool(), list(), str(), float()
#  변수 [데이터 타입] 
#  산술 연산자 (+ - * / // %) ex) [문자-문자] 안됨
#  비교 연산자 (< > >= <= == !=)
# 논리 연산자 (and, or, not)
# 할당 연산자 (= =+ =- =*)

#정삼각형의 넓이와 둘레를 계산하는 프로그램
#밑변?높이?
line = int(input("밑변 입력: "))
height = int(input("높이 입력: "))

print(f"정삼각형의 넓이는 {height*line*0.5} 둘레는 {line*3}")
운동순서 만들기 프로그램
#원하는 운동 종류 3개 입력받아, 효과적인 운동순서 생성
#운동순서: 스트레칭 -> 윗몸 일으키기 -> 러닝

sport1=str(input("운동1:"))
sport2=str(input("운동2:"))
sport3=str(input("운동3:"))
print(f"효과적인 운동 순서는 {sport1} > {sport2} > {sport3} 입니다")
영화 리스트, 팝콘 리스트, 음료 리스트를 보여줘서 선택한 후 조합을 보여주는 프로그램
# #영화 번호 고르시오 [1: 서울의 봄 2: 위시 3: 노량]
# #팝콘 번호 고르시오 [1: 팝콘 2: 치즈팝콘 3: 캬라멜 팝콘]
# #음료 번호 고르시오 [1: 콜라 2: 제로콜라 3: 스트라이트]
# #고르신 영화는 위시 이며, 팝콘은 치즈 팝콘 그리고 음료는 제로 콜라 주문하셨습니다!
movie=int(input("영화 번호 고르시오 [1: 서울의 봄 2: 위시 3: 노량]"))
popcorn=int(input("팝콘 번호 고르시오 [1: 팝콘 2: 치즈팝콘 3: 캬라멜 팝콘]"))
drink=int(input("음료 번호 고르시오 [1: 콜라 2: 제로콜라 3: 스트라이트]"))

movielist=['서울의 봄','위시','노량']
popcornlist=['팝콘','치즈 팝콘','캬라멜 팝콘']
drinklist=['콜라','제로콜라','스프라이트']

print(f"고르신 영화는 {movielist[movie-1]}, 팝콘은 {popcornlist[popcorn-1]}, 음료는 {drinklist[drink-1]} 입니다.")

 

반응형
728x90
반응형

오늘은 어제 배운 input print 를 복습하면서 시작.

# input() : 유저한테 입력받는 기능 [문자타입]
# print() : 안에 들어있는 내용 출력 
# int() : 안에 들어있는 문자를 정수화
# float() : 실수화
# str() : 문자화  
# type() : 데이터타입을 알려주는 기
# 사칙연산 - + * / (나누기) % (나머지) // (몫) ** (제곱)

정수화 안한 {first+second}는 123 456을 문자로서 합치고,
{int_first+int_second}는 숫자로 합계를 나타냄

단계를 축약한다면 이렇게! 아예 first 인풋을 지정할때에 int를 붙여서, 정수화 시키는 방법이 있음

 

cpu는 연산을 하고 ram은 기억을 하는 과정에서, 데이터 타입 구분을 알고 가면 좋다.
1. 숫자형
  - 정수 integer (10, -3, 100..)
  - 부동소수점 floating point (3.14, -0.001, 2.0 ..)
2. 문자열
  - 문자, 단어 또는 그 이상의 텍스트를 저장 ("hello", "python", "1234")
  - 이름: 'John'
  - greeting = "안녕하세요!"
  - multi_line_string = " " " (여러 줄의 문자열 표현)

타입 변환 함수
1. int() 함수
  
- 정수화
2. float() 함수
  - 문자열이나 정수를 부동소수점 숫자로 변환 (실수화)
3. str() 함수
  - 숫자 (정수/실수)를 문자열로 변환

#숫자 사칙 연산자
# +, -, *
# / (나눗셈 연산자), % (나머지 연산자)
print(5/2) #2.5
print(5%2) #1

# // (정수 나머지[몫])
print(5//2) #2

#** (제곱 연산자)
print(2**4) #16

주석 처리: ctrl+/

 

반응형
728x90
반응형

https://github.com/

작업하던 작업물들을 Github에 저장해 불러오기 할 수 있다.

https://roadmap.sh/roadmaps

참고하면 좋을만한 추천 웹사이트로, 파이썬 로드맵을 보여주고 있고 기초부터 완성까지 스텝별 배울 수 있다.  

파이썬 특징:
 - 간결하고 읽기 쉬운 문법
 
파이썬 적용 분야:
 - 웹 개발 (프레임워크를 사용하여 웹 애플리케이션 개발)
 - 데이터 과학과 인공지능 (NumPy, Pandas, TensorFlow, PyTorch 등의 라이브러리를 통해 데이터분석, 머신러닝 딥러닝 등의 작업 수행)
 - 자동화 스크립트
 - 교육
 
 IDE (통합 개발 환경)
  - 코드 작성 도움 프로그램 
  - 소프트웨어 개발을 위한 포괄적 도구 모음
  - 기본적으로 코드 작성, 테스트, 디버깅 등 소프트웨어 개발의 여러 과정을 하나의 애플리케이션 내에서 처리할 수 있게 해줌
  - 우리는 파이챰
-------------------------------------


우클릭 > New > Python File > Hello 치기
1째줄에 print("hello world") > 우클릭 run hello

--------
1.주석문 (comment)
 - 파이썬에는 #기호 뒤에 오는 모든 텍스트가 주석으로 처리
2. Print 함수
- 출력을 담당하는 기본적인 함수
- 연산이 들어가는 경우 f, {} 사용하기
 -f문자열문법: print(f"123+456+789={123+456+789}")
3. 변수
 - 파이썬에서 변수는 값을 담는 상자
  -name변수 사용: name = "HAYLEY"  print(name)  > run > HAYLEY
  -mbti변수 사용: mbti = "ENTP"    print(mbti)  > run > ENTP

4. input (user로부터 화면하단에 값을 입력 받게 된다)

 

반응형

+ Recent posts