
내장함수는 생각보다 많았고, 내용이 많아 따로 다루면서 꼭 사용하면 좋은것들을 추려내서 공부할 필요가 있어보인다.
파이썬에서 문자열은 변경 불가능한 객체이다.
즉, 문자열을 한 번 생성하면 그 내용을 변경할 수 없다.
그래서 문자열 연결('+' 연산자) 과 'join()' 메서드를 사용하는데 둘의 차이점을 비교해보려한다.
문자열 연결('+' 연산자)
기존 문자열의 내용은 새로운 메모리 위치로 복사되며, 이로 인해 성능이 저하될 수있다.
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result) # 출력: "Hello World"
'join()' 메서드
연결할 문자열들을 담고있는 리스트, 튜플 등 에서 각각의 문자열을 하나씩 꺼내서 연결을 한다.
str_list = ["Hello", "World"]
result = " ".join(str_list)
print(result) # 출력: "Hello World"
결론, 'join()' 메서드를 사용한 것이 성능면에서 더 효율적이고, 코드가 더 간결해지므로 문자열을 연결할때 사용하면 좋다.
파이썬에서 두 변수의 값을 교환할 때 다중 할당을 사용하면 코드가 더 간결하고 효율적으로 작성된다.
다중 할당을 사용하면 임시 변수를 사용하지 않고도 두 변수의 값을 쉽게 교환할 수 있다.
임시 변수를 사용하는 방법(temp)
# 기존 방법
a = 5
b = 10
# 임시 변수를 사용하여 값 교환
temp = a
a = b
b = temp
print(a) # 출력: 10
print(b) # 출력: 5
다중 할당을 사용하는 방법
# 다중 할당 사용
a = 5
b = 10
# 다중 할당을 사용하여 값 교환
a, b = b, a
print(a) # 출력: 10
print(b) # 출력: 5
한줄의 코드로 두 변수 'a' 와 'b'의 값을 교환할 수 있다.
이렇게 하면, 간결하고 불필요한 임시 변수를 사용하지 않아 메모리 효율성도 좋다.
파이썬에서 'in'연산자는 시퀀스 타입(리스트, 튜플, 문자열 등)이나 집합(set)에서 특정 요소의 존재 여부를 확인하는데 사용
'in'연산자를 사용하면 코드를 더 간결하고 효율적으로 작성할 수 있다.
이를 통해 코드의 가독성을 높이고 불필요한 루프를 피할 수 있다.
for key in sequence:
print("found")
만약, 코드를 짤때 무한 루프를 사용하는 일이 생긴다면 'while True' 와 'while 1'을 먼저 생각하게 될 것이다.
while True
파이썬에서 True는 상수이다. 무한 루프를 생성하는 데 자주 사용됨.
while 1
숫자 1은 파이썬에서 암시적으로 True로 평가된다. 따라서 while 1도 무한 루프를 생성한다.
'True'가 파이썬의 상수 객체이기 때문에 추가적인 이름 조회가 필요하다.
반면, '1'은 리터럴이므로 추가 조회가 필요하지 않다.
둘의 차이는 정말 미세한 차이를 가지고 있기 때문에,
만약 성능 최적화가 정말 중요한 상황이라면 'while 1'을 사용하고
코드의 가독성과, 유지보수성을 위한 것이라면 ' while True'를 사용하는 것이 좋다.