일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Binding
- React JS
- 플러터
- Maui
- Animation
- MVVM
- 바인딩
- 애니메이션
- 마우이
- .NET
- MSSQL
- spring boot
- GitHub
- AnimationController
- Flutter
- JavaScript
- listview
- 함수
- page
- 파이어베이스
- 자바스크립트
- db
- 오류
- 깃허브
- 리엑트
- MS-SQL
- typescript
- HTML
- Firebase
- 닷넷
Archives
- Today
- Total
개발노트
[Python] 요약 정리 본문
반응형
문자형
mixed_quotes = "She said, \"Hello, World!\" and it's amazing."
mixed_quotes = 'She said, "Hello, World!" and it\'s amazing.'
mixed_quotes = """She said, "Hello, World!" and it's amazing."""
# 문자열 이어붙이기 (+ 연산자)
greeting = "Hello, "
name = "John"
message = greeting + name
print(message) # 출력: "Hello, John"
# 문자열 반복하기 (* 연산자)
word = "Python "
repeated_word = word * 3
print(repeated_word) # 출력: "Python Python Python "
# 문자열 포함 여부 확인하기 (in 연산자)
sentence = "The quick brown fox jumps over the lazy dog"
keyword1 = "fox"
keyword2 = "cat"
print(keyword1 in sentence) # 출력: True
print(keyword2 in sentence) # 출력: False
# 문자열 포함하지 않는지 확인하기 (not in 연산자)
print(keyword1 not in sentence) # 출력: False
print(keyword2 not in sentence) # 출력: True
# 문자열 포맷팅 (% 연산자)
age = 30
formatted_message = "I am %d years old" % age
print(formatted_message) # 출력: "I am 30 years old"
# 문자열 인덱싱 (인덱스는 0부터 시작)
word = "Python"
print(word[0]) # 출력: "P"
print(word[2]) # 출력: "t"
# 문자열 슬라이싱 (시작 인덱스와 끝 인덱스를 지정)
sentence = "Python Programming"
print(sentence[0:6]) # 출력: "Python"
print(sentence[7:]) # 출력: "Programming"
숫자형
# 덧셈 연산
result_addition = 5 + 3
print("덧셈 결과:", result_addition) # 출력: 덧셈 결과: 8
# 뺄셈 연산
result_subtraction = 10 - 3
print("뺄셈 결과:", result_subtraction) # 출력: 뺄셈 결과: 7
# 곱셈 연산
result_multiplication = 4 * 6
print("곱셈 결과:", result_multiplication) # 출력: 곱셈 결과: 24
# 나눗셈 연산
result_division = 10 / 3
print("나눗셈 결과:", result_division) # 출력: 나눗셈 결과: 3.3333333333333335
# 정수 나눗셈 연산
result_floor_division = 10 // 3
print("정수 나눗셈 결과:", result_floor_division) # 출력: 정수 나눗셈 결과: 3
# 나머지 연산
result_modulus = 10 % 3
print("나머지 결과:", result_modulus) # 출력: 나머지 결과: 1
# 제곱 연산
result_exponentiation = 2 ** 3
print("제곱 결과:", result_exponentiation) # 출력: 제곱 결과: 8
bool형
# 불리언(bool) 연산자 예시 코드
# 논리 AND 연산 (and)
result_and = True and False
print(result_and) # 출력: False
# 논리 OR 연산 (or)
result_or = True or False
print(result_or) # 출력: True
# 논리 NOT 연산 (not)
original_value = True
result_not = not original_value
print(result_not) # 출력: False
# 복합적인 논리 연산
a = True
b = False
c = True
result_complex = (a and b) or (c and not b)
print(result_complex) # 출력: True
# 비교 연산자 (Comparison Operators)
x = 5
y = 10
# x와 y가 같은지 비교 (==)
result_equal = x == y
print(result_equal) # 출력: False
# x와 y가 다른지 비교 (!=)
result_not_equal = x != y
print(result_not_equal) # 출력: True
# x가 y보다 작은지 비교 (<)
result_less_than = x < y
print(result_less_than) # 출력: True
# x가 y보다 큰지 비교 (>)
result_greater_than = x > y
print(result_greater_than) # 출력: False
# x가 y보다 작거나 같은지 비교 (<=)
result_less_equal = x <= y
print(result_less_equal) # 출력: True
# x가 y보다 크거나 같은지 비교 (>=)
result_greater_equal = x >= y
print(result_greater_equal) # 출력: False
# 멤버십 연산자 (Membership Operators)
my_list = [1, 2, 3]
# 리스트 내에 특정 요소가 있는지 확인 (in)
result_in = 2 in my_list
print(result_in) # 출력: True
# 리스트 내에 특정 요소가 없는지 확인 (not in)
result_not_in = 4 not in my_list
print(result_not_in) # 출력: True
입력받기(input)
#일반적인 방법(공백으로 구분함 ex) 1 3 -> 1,3)
A, B = input().split()
#sys 모듈사용 (속도 빠름)
import sys
# 표준 입력으로부터 한 줄을 읽고 공백을 기준으로 분리하여 정수형 변수 A와 B에 할당
A, B = map(int, sys.stdin.readline().split())
# 입력받은 두 정수 출력
print("입력한 정수:", A, B)
# 사용자로부터 여러 개의 숫자를 입력받아 리스트로 저장하기
input_str = input("여러 개의 숫자를 공백으로 구분하여 입력하세요: ")
numbers_list = input_str.split() # 입력값을 공백을 기준으로 분리하여 리스트로 변환
print("입력한 숫자들:", numbers_list)
# 리스트에 있는 숫자들의 합 구하기
numbers_sum = sum([int(num) for num in numbers_list]) # 리스트 내포를 사용하여 문자열을 정수로 변환하고 합계 계산
print("숫자들의 합:", numbers_sum)
출력하기(print)
name = "Alice"
age = 30
# 출력: 이름: Alice 나이: 30
print(f"이름: {name} 나이: {age}")
print("이름:", name, "나이:", age)
print("이름: " + name + " 나이: " + str(age))
print("이름: %s 나이: %d" % (name, age))
print("이름: {} 나이: {}".format(name, age))
List형
#list형 선언
fruits = ["apple", "banana", "orange"]
numbers = [1, 2, 3, 4, 5]
mixed_list = [1, "apple", True, 3.14]
#요소 접근
print(fruits[0]) # 출력: "apple"
print(numbers[2]) # 출력: 3
print(mixed_list[1]) # 출력: "apple"
#길이
print(len(fruits)) # 출력: 3
#요소 추가(맨뒤에)
fruits.append("grape")
print(fruits) # 출력: ["apple", "banana", "orange", "grape"]
#요소 삭제(첫번째 매칭 값만)
fruits.remove("banana")
print(fruits) # 출력: ["apple", "orange", "grape"]
#요소 추가(특정 위치)
fruits.insert(1, "kiwi")
print(fruits) # 출력: ["apple", "kiwi", "orange", "grape"]
#요소 인덱스 찾기(특정 값으로)
index_of_orange = fruits.index("orange")
print(index_of_orange) # 출력: 2
#요소 갯수 세기(특정 요소가 몇개가 있는지)
count_apple = fruits.count("apple")
print(count_apple) # 출력: 1
#요소 정렬하기(오름차순)
numbers = [4, 2, 1, 5, 3]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # 출력: [1, 2, 3, 4, 5]
print(numbers) # 출력: [4, 2, 1, 5, 3] (원본 리스트는 변경되지 않음)
numbers.sort()
print(numbers) # 출력: [1, 2, 3, 4, 5] (원본 리스트는 변경됨)
#요소 정렬하기(내림차순)
sorted_numbers = sorted(numbers, reverse= True) (원본 리스트는 변경되지 않음)
number.sort(reverse=True) (원본 리스트는 변경됨)
print(numbers) # 출력: [5, 4, 3, 2, 1]
#요소 순서 뒤집기
fruits.reverse()
print(fruits) # 출력: ["grape", "orange", "kiwi", "apple"]
Tuple형
튜플(Tuple)은 리스트와 비슷한 데이터 구조로, 여러 개의 요소를 순서대로 저장하는 데 사용됩니다. 튜플은 리스트와 달리 변경이 불가능하며, 요소를 추가, 삭제, 수정할 수 없습니다. 이러한 특성으로 인해 튜플은 불변(Immutable)한 자료형이라고도 불립니다.
튜플은 괄호(())를 사용하여 생성하며, 각 요소는 쉼표(,)로 구분됩니다. 여러 종류의 데이터를 혼합하여 저장할 수 있습니다.
# 빈 튜플 생성
empty_tuple = ()
# 요소가 하나인 튜플은 반드시 쉼표를 붙여야 함
single_element_tuple = (42,)
# 여러 개의 요소가 있는 튜플
fruits = ("apple", "banana", "orange")
mixed_tuple = (1, "hello", True, 3.14)
fruits = ("apple", "banana", "orange")
print(fruits[0]) # 출력: "apple"
print(fruits[1]) # 출력: "banana"
print(fruits[2]) # 출력: "orange"
Dictionary형
딕셔너리(Dictionary)는 파이썬에서 가장 유용하고 강력한 데이터 구조 중 하나로, 키(key)와 값(value)을 쌍으로 저장하는 컨테이너 자료형입니다. 각 키는 유일해야 하며, 키와 값은 콜론(:)으로 구분하여 저장됩니다. 딕셔너리는 중괄호({})를 사용하여 생성합니다.
# 빈 딕셔너리 생성
empty_dict = {}
# 키와 값의 쌍으로 딕셔너리 생성
student = {
"name": "Alice",
"age": 25,
"major": "Computer Science"
}
#딕셔너리 값 접근
print(student["name"]) # 출력: "Alice"
print(student["age"]) # 출력: 25
print(student["major"]) # 출력: "Computer Science"
#딕셔너리 값 변경
student["age"] = 26
print(student["age"]) # 출력: 26
#새로운 key-value 추가
student["birthday"] = "1993-01-03"
print(student)
# 출력: {'name': 'Alice', 'age': 25, 'birthday': '1993-01-03'}
#요소 삭제
del student["age"]
print(student)
# 출력: {'name': 'Alice', 'major': 'Computer Science'}
#list로 key, value 값 얻기
keys_list = list(student.keys())
values_list = list(student.values())
print(keys_list) # 출력: ['name', 'age', 'major']
print(values_list) # 출력: ['Alice', 25, 'Computer Science']
#딕셔너리 요소 갯수
num_of_elements = len(student)
print(num_of_elements) # 출력: 3
#for문에서 key, value 가져오기
for key, value in student.items():
print(key, ":", value)
# 출력:
# name : Alice
# age : 25
# major : Computer Science
함수(Function)
#함수 선언
def greet():
print("Hello, World!")
#매개변수, return 값 사용
def add_numbers(a, b):
return a + b
#매개변수 기본값 사용
def greet(name="Guest"):
print("Hello, " + name + "!")
greet("Alice") # 출력: Hello, Alice!
greet() # 출력: Hello, Guest!
#매개변수 갯수를 유동적으로 받는 함수(* 사용)
def add_all(*args):
total = 0
for num in args:
total += num
return total
result1 = add_all(1, 2, 3)
result2 = add_all(10, 20, 30, 40, 50)
print(result1) # 출력: 6
print(result2) # 출력: 150
#재귀함수 (팩토리얼 함수)
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n - 1)
result = factorial(5)
print(result) # 출력: 120 (5! = 5 * 4 * 3 * 2 * 1 = 120)
#재귀함수 (피보나치 수열)
def fibonacci(n):
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1]
else:
fib_list = fibonacci(n - 1)
fib_list.append(fib_list[-1] + fib_list[-2])
return fib_list
result = fibonacci(8)
print(result) # 출력: [0, 1, 1, 2, 3, 5, 8, 13]
if문
num = int(input("정수를 입력하세요: "))
if num > 0:
print("입력한 숫자는 양수입니다.")
elif num < 0:
print("입력한 숫자는 음수입니다.")
else:
print("입력한 숫자는 0입니다.")
for문
#범위(range) for문
for num in range(5):
print(num)
# 출력:
# 0
# 1
# 2
# 3
# 4
#continue, break 사용한 for문
for num in range(1, 11):
if num % 2 == 0:
continue # 짝수인 경우 건너뜀
if num == 7:
break # 7을 만나면 반복문 종료
print(num)
# 출력: 1, 3, 5
#리스트(list) for문
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(fruit)
# 출력:
# apple
# banana
# orange
#문자열(String) for문
message = "Hello, World!"
for char in message:
print(char)
# 출력:
# H
# e
# l
# l
# o
# ,
#
# W
# o
# r
# l
# d
# !
#딕셔너리(Dictionary) for문
student = {"name": "Alice", "age": 25, "major": "Computer Science"}
for key, value in student.items():
print(key, ":", value)
# 출력:
# name : Alice
# age : 25
# major : Computer Science
while문
#while문 사용
num = 1
while num <= 5:
print(num)
num += 1
# 출력:
# 1
# 2
# 3
# 4
# 5
#무한 루프 사용한 while문
while True:
user_input = input("종료하려면 'exit'를 입력하세요: ")
if user_input.lower() == "exit":
break
print("프로그램을 종료합니다.")
#try-except 와 같이 사용
while True:
try:
num = int(input("정수를 입력하세요: "))
break # 정수를 입력받으면 반복문을 종료
except ValueError:
print("잘못된 입력입니다. 정수를 입력해주세요.")
print("입력한 정수:", num)
내장 함수
abs(x) | x | x의 절댓값을 반환합니다. |
all(iterable) | iterable | iterable의 모든 요소가 참이면 True, 아니면 False를 반환합니다. |
any(iterable) | iterable | iterable의 요소 중 하나라도 참이면 True, 아니면 False를 반환합니다. |
bin(x) | x | x를 2진수로 변환하여 반환합니다. |
bool(x) | x | x가 참이면 True, 아니면 False를 반환합니다. |
bytearray(size, init=None) | size, init | 지정된 크기의 배열을 생성합니다. |
bytes(string, encoding='utf-8', errors='strict') | string, encoding, errors | 지정된 문자열을 바이트 시퀀스로 변환하여 반환합니다. |
callable(object) | object | object가 호출 가능한지 여부를 반환합니다. |
chr(x) | x | x에 해당하는 문자를 반환합니다. |
classmethod(method) | method | method를 클래스 메서드로 변환합니다. |
compile(source, filename, mode, flags=0, dont_inherit=False) | source, filename, mode, flags, dont_inherit | 지정된 소스 코드를 컴파일하여 파이썬 코드로 변환합니다. |
complex(real, imag) | real, imag | 복소수를 생성합니다. |
delattr(object, name) | object, name | object의 지정된 속성을 삭제합니다. |
dict(mapping, **kwargs) | mapping, **kwargs | 지정된 매핑을 사전으로 변환합니다. |
dir(object) | object | object의 속성 목록을 반환합니다. |
divmod(x, y) | x, y | x를 y로 나눈 몫과 나머지를 반환합니다. |
enumerate(iterable, start=0) | iterable, start | iterable의 요소를 순회하며 인덱스와 함께 반환합니다. |
eval(expression, globals=None, locals=None) | expression, globals, locals | 지정된 표현식을 평가하여 값을 반환합니다. |
exec(expression, globals=None, locals=None) | expression, globals, locals | 지정된 표현식을 실행합니다. |
filter(function, iterable) | function, iterable | 지정된 함수가 참을 반환하는 iterable의 요소만 반환합니다. |
float(x) | x | x를 부동 소수점으로 변환하여 반환합니다. |
format(value, format_spec=None) | value, format_spec | value를 지정된 형식으로 반환합니다. |
frozenset(iterable) | iterable | iterable의 요소를 포함하는 고정 세트를 생성합니다. |
getattr(object, name, default=None) | object, name, default | object의 지정된 속성의 값을 반환합니다. |
globals() | 전역 변수 목록을 반환합니다. | |
hex(x) | x | x를 16진수로 변환하여 반환합니다. |
id(object) | object | object의 식별자를 반환합니다. |
input(prompt='') | prompt | 사용자로부터 입력을 받아 문자열로 반환합니다. |
int(x, base=10) | x, base | x를 정수로 변환하여 반환합니다. |
isinstance(object, type) | object, type | object가 지정된 type의 인스턴스인지 여부를 반환합니다. |
issubclass(class, type) | class, type | class가 지정된 type의 하위 클래스인지 여부를 반환합니다. |
iter(iterable) | iterable | iterable의 반복자를 반환합니다. |
len(s) | s | s의 길이를 반환합니다. |
list(iterable) | iterable | iterable의 요소를 포함하는 리스트를 생성합니다. |
locals() | 지역 변수 목록을 반환합니다. | |
map(function, iterable) | function, iterable | 지정된 함 |
- 형변환
int(x) : x를 정수로 변환합니다.
float(x) : x를 부동소수점으로 변환합니다.
str(x) : x를 문자열로 변환합니다.
bool(x) : x가 참이면 True, 아니면 False를 반환합니다.
list(x) : x를 리스트로 변환합니다.
tuple(x) : x를 튜플로 변환합니다.
set(x) : x를 세트로 변환합니다.
dict(x) : x를 사전으로 변환합니다. - 숫자
abs(x) : x의 절댓값을 반환합니다.
min(x) : x의 최솟값을 반환합니다.
max(x) : x의 최댓값을 반환합니다.
sum(x) : x의 합을 반환합니다.
product(x) : x의 곱을 반환합니다.
divmod(x, y) : x를 y로 나눈 몫과 나머지를 반환합니다.
floor(x) : x의 내림차수를 반환합니다.
ceil(x) : x의 올림차수를 반환합니다.
trunc(x) : x의 버림차수를 반환합니다.
round(x) : x를 n자리에서 반올림합니다. - 문자열
len(s) : s의 길이를 반환합니다.
str.find(x) : s에서 x를 찾는 인덱스를 반환합니다.
str.index(x) : s에서 x를 찾는 인덱스를 반환합니다.
str.replace(old, new) : s에서 old를 new로 바꿉니다.
str.split(delim) : s를 delim으로 분리합니다.
str.join(x) : x를 delim으로 연결합니다.
str.upper() : s를 대문자로 변환합니다.
str.lower() : s를 소문자로 변환합니다.
str.title() : s의 첫 글자를 대문자로, 나머지 글자를 소문자로 변환합니다.
str.capitalize() : s의 첫 글자를 대문자로 변환합니다.
라이브러리
random
- random 라이브러리는 난수 생성과 관련된 함수들을 제공합니다.
주로 게임, 통계, 암호학 등에서 난수를 생성하는 데 사용됩니다. - 대표적인 함수들:
- random.random(): 0 이상 1 미만의 실수형 난수를 반환합니다.
- random.randint(a, b): a 이상 b 이하의 정수형 난수를 반환합니다.
- random.choice(seq): 시퀀스(seq)에서 임의의 요소를 선택하여 반환합니다.
- random.shuffle(seq): 시퀀스(seq)의 요소들을 무작위로 섞습니다.
datetime
- datetime 라이브러리는 날짜와 시간을 처리하는 클래스와 함수들을 제공합니다.
날짜와 시간을 파싱하고, 날짜 간의 계산, 출력 포맷 설정 등에 사용됩니다.
datetime 모듈에 있는 datetime 클래스가 가장 자주 사용됩니다. - 대표적인 클래스와 함수들:
- datetime.datetime: 날짜와 시간을 포함하는 객체를 생성하고 조작합니다.
- datetime.date: 날짜만을 포함하는 객체를 생성하고 조작합니다.
- datetime.time: 시간만을 포함하는 객체를 생성하고 조작합니다.
- datetime.timedelta: 두 날짜 사이의 기간을 나타내는 객체를 생성합니다.
반응형
'알고리즘, PS' 카테고리의 다른 글
[Python] 코테 리마인드하기 (0) | 2024.05.23 |
---|---|
[Java] 자료구조 형 변환, 기본 메소드 (0) | 2023.08.18 |
[Java] 코딩테스트 문제 리스트 (with 풀면서 배운점) (0) | 2023.08.16 |
[Java] 요약 정리 (0) | 2023.08.13 |
[Python] 코딩테스트 문제 리스트 (with 풀면서 배운점) (0) | 2023.08.10 |
Comments