오늘 배운 내용을 정리해보자면 아래의 3가지로 나누어 지는 것 같다.
- 변수
- input, output 함수
- random 라이브러리
기본 - input output -> 문자열을 받아서 문자열 출력!
random - 무작위의 숫자 또는 문자를 받아와서 출력!
1. 변수는 먼저 올바른 변수 이름의 예와 잘못된 예 등을 보면서 변수의 개념을 이해했다.
name 1user (숫자로 시작합니다)
age user-name (하이픈(-)은 허용되지 않습니다)
user_name if (Python의 키워드입니다)
User1
_temp
1.1 변수는 값이 변경되며 삭제가 된다는 것도 간단히 보았다.
1.2 변수에는 많은 종류의 타입이 있다.
- 숫자형: 숫자를 다룹니다.
- 정수형(int): 양수와 0, 음수를 저장할 수 있습니다. 1 5 100 0 -30 -45
- 실수형(float): 소숫점을 표현할 수 있습니다. 1.5 5.6 100.23 0.0 -30.53245
- 복소수형(complex): 실수부와 허수부로 나누어 수를 표현할 수 있습니다.
- 논리 자료형(bool) : 논리 자료형 True, False을 다룹니다.
- 시퀀스: 순서가 있는 자료형입니다.
- 문자열 자료형(str): 문자열을 저장합니다.
- 리스트 자료형(list): 다른 자료형을 담을 수 있는 변경 가능한 자료형입니다.
- 튜플 자료형(tuple): 다른 자료형을 담을 수 있는 변경 불가능한 자료형입니다.
- 컬렉션 혹은 컨테이너 자료형: 다른 자료형을 담을 수 있는 자료형입니다.
- 리스트 자료형(list): 다른 자료형을 담을 수 있는 변경 가능한 자료형입니다.
- 튜플 자료형(tuple): 다른 자료형을 담을 수 있는 변경 불가능한 자료형입니다.
- 사전 자료형 또는 딕셔너리 자료형(dict): key와 value의 쌍으로 묶여 있는 key의 중복을 허락하지 않는 자료형입니다.
- 집합 자료형 또는 셋 자료형(set): 값에 중복을 허락하지 않는 자료형입니다.
- None 자료형: None, 아무것도 없음을 명시하는 자료형입니다.
2. input, output 함수
input 과 output 이라는 함수들의 특성을 알아보고 함수들의 특성을 활용하여서 2024년 새해 계획프로그램을 만들어보았다.
아래와 같이 룰을 정하고 진행하였다.
# 2024년 새해 계획 프로그램
2024년도 계획을 10문장으로 적고, 그에 따른 2024년도 계획에서 중요 부분을 변수로 받아서 Input으로 받는 프로그램 만들기!
1. 나의 2024년도 계획을 적는다.
2. 그 중에서 변수로 만들수 있는 것들(input으로 받을 수 있는 것을 비운다.)
3. 10 문장에 대해서 똑같이 적용한다. (1개~3개정도 단어)
4. 테스트 해본다.
5. 코드와 결과를 업로드 한다.
2.1 하나의 단어를 입력받아서 출력하기
2.2 두가지 단어를 한꺼번에 받기
2.3 두가지 값을 입력 받는 법
3. random
3.1. Randrange() 함수
randrange(start, stop[, step])
start: 범위의 시작값입니다. 이 값은 범위에 포함됩니다. 만약 start가 생략되면, 기본값은 0이 됩니다.
stop: 범위의 끝값입니다. 이 값은 범위에 포함되지 않으며, 함수는 stop - 1까지의 수 중에서 무작위로 선택합니다.
step: 선택적 매개변수로, 숫자 간의 간격을 지정합니다. 예를 들어, step이 2이면 함수는 두 숫자 간격으로 무작위 수를 선택합니다.
# 1.1 기본 사용법
import random
'''
0~9까지의 임의의 숫자를 선택하는 코드를 작성
(꼭 기억) 파이썬의 숫자의 시작은 무조건 0부터
10으로 입력하면 -1 즉, 9까지
'''
num = random.randrange(20) #무조건 0부터 시작
print(num)
활용하여 간단한 로또 번호 뽑기
# 1.3 간격 설정
# 10부터 100까지 숫자 중에서 10의 간격으로 무작위 선택
num10_100 = random.randrange(10, 101, 10)
print(num10_100)
3.2. Choice 함수
random.choice() 함수는 파이썬의 random 라이브러리에서 제공하는 매우 유용한 함수 중 하나입니다. 이 함수는 주어진 시퀀스(예: 리스트, 튜플, 문자열 등)에서 무작위로 요소 하나를 선택하여 반환합니다. 시퀀스 내의 모든 요소는 선택될 가능성이 동일합니다. random.choice() 함수를 사용하는 여러 가지 측면에 대해 더 자세히 설명하겠습니다.
#1. Choice 기본 사용법
#chosen_element = random.choice(sequence)
# 리스트에서 무작위 과일 선택
# 다양한 정보를 한번에 받아오는 것 = 리스트
elements = ['사과', '바나나', '체리']
choice_elements = random.choice(elements)
print(f'선택된 요소 : {choice_elements} 입니다.')
# 2. 문자열에서 무작위 문자 선택
greeting = "안녕하세요"
choice_char = random.choice(greeting)
print(f"선택된 문자: {choice_char} 입니다.")
활용한 실습
'''
코드 실행 날짜 : 2024년 1월 1일
버전 : V0.1
작성자 : 김진환
코드 내용 : random라이브러리를 활용해서 실습 예제 작성
'''
# 이 코드는 Random 라이브러리를 사용한 예시입니다.
import random # random 라이브러리를 가져옵니다.
# 두 개의 무작위 숫자를 생성하는 코드
random_number1 = random.randrange(1, 10) #1부터 9까지의 임의의 숫자 한개를 가져옵니다.(2024.1.1 업데이트)
#random_number2 = random.randrange(1, 10) #1부터 9까지의 임의의 숫자 한개를 가져옵니다.(2024.1.1 에러)
# 두 개의 무작위 숫자를 합산하는 코드 / 생성된 두 숫자의 합 계산
sum_of_numbers = random_number1 + random_number2
# 결과 출력
print(f"첫 번째 생성된 숫자: {random_number1}") # 첫번째 생성된 값 (2024.1.1 에러)
print(f"두 번째 생성된 숫자: {random_number2}") # 두번째 생성된 값
print(f"두 숫자의 합: {sum_of_numbers}") # 두 숫자의 합 출력
윷놀이 프로그램 만들어보기
import random
'''
1. 윷은 앞/뒤 중에 하나를 선택해야 한다.
1.1 윷은 랜덤으로 하나가 선택되어야 한다.
1.2 앞/뒤를 나올 확률은 1/2이 되어야 한다.
2. 윷놀이에는 다섯가지의 이동 법칙이 있다.(빽도 X)
2.1 윷놀이에는 도, 개, 걸, 윷, 모
2.2 도 - 앞 3 뒤 1 / 개 - 앞 2 뒤 2 / 걸 - 앞 1 뒤 3 / 윷 - 앞 0 뒤 4 / 모 - 앞 4 뒤 0
2.3 (히든 계산) 도 - 1 / 개 - 2 / 걸 - 3 / 윷 - 4 / 모 - 0
3. 최종적으로 도~모 하나만 선택 되어야 한다.
'''
# 윷 던지기 결과 (0: 앞, 1: 뒤)
throw1 = random.choice([0, 1])
throw2 = random.choice([0, 1])
throw3 = random.choice([0, 1])
throw4 = random.choice([0, 1])
# 뒷면의 총 개수 계산
total_back = throw1 + throw2 + throw3 + throw4
# 윷놀이 결과
# 뒷면이 없는 경우 (모), 뒷면이 1개인 경우 (도), 2개 (개), 3개 (걸), 모두 뒷면 (윷)
# results = [0,1,2,3,4]
results = ['모', '도', '개', '걸', '윷']
print(total_back)
print(results[total_back])
'Python' 카테고리의 다른 글
2024.01.05 (금) 리스트, 튜플, 딕셔너리, 셋 활용버전 (0) | 2024.01.05 |
---|---|
2024.01.04 (목) 연산자, 시퀀스 자료형, 리스트 (2) | 2024.01.04 |
2024.01.03 (수) 자료형, 연산과 구문 (2) | 2024.01.03 |
2023.12.29 (금) 인공지능 AI 백엔드 2일차 (2) | 2023.12.29 |
2023.12.28 (목) 인공지능 AI 백엔드 1일차 (4) | 2023.12.29 |