본문 바로가기
반응형

Programming Language126

[Python] 파이썬 문자열 리터럴 실행 함수, ast.literal_eval() 파이썬 eval() 함수를 아시나요? 문자열 표현식을 인자로 받아 해당 표현식을 실행하고, 실행 결과를 반환할 때 사용하는 함수입니다. 그런데 eval() 함수는 실행할 리터럴을 문자열로 받기 때문에, 주입 공격에 취약하다는 단점이 있습니다. 이 eval()을 대신하여 파이썬은 ast.literal_eval() 함수를 제공합니다. 사용자는 파이썬 내장 모듈인 ast를 import 한 후, literal_eval() 함수를 불러 사용하면 됩니다. import ast result = ast.literal_eval(d) # d로 파이썬 표현식이 들어갑니다. 이 함수는 문자열을 실행할 때, Python에서 제공하는 데이터 타입인지 아닌지 평가하고 실행하기 때문에 eval() 보다 안전하다는 장점이 있습니다. 예.. 2024. 2. 27.
[Python] 가장 큰 값을 반환하는 파이썬 max() 파이썬 max() 함수는, 비교 가능한 모든 종류의 데이터에 사용할 수 있는 함수로, 주어진 인자나 interable 값에서 가장 큰 값을 반환해 줍니다. max 함수를 활용하는 방법을 예시와 함께 살펴보겠습니다. 1. 숫자 중 가장 큰 값 print(max(2, 3, 4, 5)) # 출력: 5 2. list에서 가장 큰 값 print(max([2, 3, 4, 5])) # 출력: 5 3. 문자열에서 알파벳순으로 가장 뒤에 오는 문자 print(max("hello")) # 출력: 'o' 4. 객체에서 가장 큰 값 예시에 쓴 lambda 함수의 기본 구조는 'lambda 매개변수 : 반환값' 임을 알아두시면 좋겠습니다. students = [{'name': 'J', 'grade': 70}, {'name': .. 2024. 2. 26.
[Python] 파이썬 문자열 포매팅, 'f-string' 사용법 아래와 같은 코드 본 적 있으신가요? name = "J" print(f"Hello, {name}.") 이렇게 문자열 앞에 'f'나 'F'를 붙인 후 작성하는 방법을 f-string이라고 부릅니다. f-string은 문자열 안에 중괄호 { }를 작성한 후 변수를 넣어 사용할 수 있다는 장점이 있습니다. 위 예시를 보면 변수 name 이 f- string 안에 쓰였죠? f-string의 중괄호를 활용하는 방법을 좀 더 보여드리겠습니다. 1. 표현식 삽입 f-string의 중괄호안에 표현식을 넣어 문자열을 작성할 수 있습니다. a = 1 b = 2 print(f"{a} + {b} = {a + b}") # 1 + 2 = 3 이 출력됩니다. 2. 함수 삽입 f-string의 중괄호에 함수를 넣으면, print().. 2024. 2. 24.
[Python] 파이썬 문자열 결합 시 join() / 구분자.join(반복 가능 객체) 파이썬에서 문자열을 결합하고 싶을 때 join() 메소드를 사용할 수 있습니다. 반복 가능한 (iterable) 객체들의 모든 요소를 사용자가 원하는 '구분자' 로 연결하여 새로운 문자열을 생성합니다. 예를 한 번 볼까요? list의 apple, banana, mango를 - 라는 '구분자'로 연결하겠다는 뜻입니다. #구분자.join(반복 가능한 객체) '-'.join( ['apple', 'banana', 'mango'] ) 이것을 활용하면 'apple-banana-mango' 라는 문자열을 얻을 수 있습니다. 만약 공백으로 연결하고 싶다면 어떻게 하면 될까요? 구분자에 ' '를 넣어주면 되겠죠? #문자를 공백으로 연결 ' '.join( ['apple', 'banana', 'mango'] ) 아주 기본적.. 2024. 2. 24.
[Python] 문자열을 공백 없이 출력하고 싶을 때는? sep='' 파이썬에서 print() 함수를 사용하여 문자열을 출력할 때, 출력되는 문자열 사이사이에 원하는 값을 삽입할 수 있습니다. 그럴 때 사용하는 것이 sep 인자입니다. 기본값은 ' ' 공백이에요. 만약 출력 시 공백을 없애고 싶다면? sep 인자에 '' 값을 넣어주면 됩니다. # 구분자 없음 print('2023', '02', '24', sep='') # 출력: 20230224 출력되는 값을 원하는 문자로 구분하고 싶다면 아래 예처럼 사용하면 됩니다. 저는 / 슬래쉬와 ' ' 공백을 넣어보겠습니다. # 구분자로 슬래쉬와 공백 지정 print('apple', 'banana', 'cherry', sep='/ ') # 출력: apple/ banana/ cherry print() 함수는 무척 자주 사용하니, se.. 2024. 2. 24.
반응형