-
44 - join() 함수study with Q - 파이썬 2024. 5. 24. 18:59
숫자를 입력하면 짝/홀수를 구분하는 코드
num = int(input("정수를 입력하시오: ")) if num % 2 == 0: print(f"입력한 문자열은 {num}입니다.\n{num}은(는) 짝수입니다") else : print(f"입력한 문자열은 {num}입니다.\n{num}은(는) 홀수입니다")
줄바꿈 \n을 쓰지 않고 줄바꿈을 하면
num = int(input("정수를 입력하시오: ")) if num % 2 == 0: print(f"""\ 입력한 문자열은 {num}입니다. {num}은(는) 짝수입니다""") else : print(f"""\ 입력한 문자열은 {num}입니다. {num}은(는) 홀수입니다""") >>> 정수를 입력하시오: 24 입력한 문자열은 24입니다. 24은(는) 짝수입니다
앞에 띄어쓰기가 들어감🧐
코드가 지저분해지지 않으면서 들여쓰기도 없앨 수는 없나?
# 방법 1 : 소괄호로 감싸기
: 소괄호로 감싸게 되면 코드 내에 개행이 있어도 하나의 문자열로 인식하게 된다.
eg) print함수처럼 이미 소괄호로 되어 있는건 소괄호 하나만 입력해도 됨
print(( "배" "고" "파" )) >>> 배고파 print( "배" "고" "파" ) >>> 배고파
그래서...
number = int(input("정수를 입력하시오: ")) if number % 2 == 0: print(( f"입력한 문자열은 {num}입니다.\n" f"{num}은(는) 짝수입니다" )) >>> 정수를 입력하시오: 124 입력한 문자열은 124입니다. 124은(는) 짝수입니다
※ 근디 얘는 파이썬에서만 사용되고 매우 매니악한 입력방식이라서 사용성이 떨어짐
# 방법 2 : join() 함수 사용하기
: 문자열.join([문자열로 입력된 리스트])
뭐 다양하게 확인해보슈
더보기print("".join([ "1", "2", "3" ])) >>> 123
print(",".join([ "1", "2", "3" ])) >>> 1,2,3
print("||".join([ "1", "2", "3" ])) >>> 1||2||3
그래서...
number = int(input("정수를 입력하시오: ")) #join()를 사용해서 해경 else : print("\n".join([ f"입력한 문자열은 {number}입니다.", f"{number}은(는) 홀수입니다" ])) >>> 정수를 입력하시오: 13 입력한 문자열은 13입니다. 13은(는) 홀수입니다
#활용 예
더보기A = [ #데카르트 평면 위에서 #사각형의 왼쪽 아래 좌표가 (x1, y1) #사각형의 오른쪽 위 좌표가 (x2, y2) #[x1, y1, x2, y2] [3,2,8,5], [-6,-3,4,1], [5,-1,13,2] ] for a in A : print(f"{a[0]},{a[1]},{a[2]},{a[3]}") #실행결과 # 3,2,8,5 # -6,-3,4,1 # 5-1,13,2
이렇게 되면 리스트가 커지면 계속 print에 추가되어야 하는 불편함이 따름
A = [ [3,2,8,5], [-6,-3,4,1], [5,-1,13,2] ] for a in A : print(",".join(a))
> 아니 근디 str이 아니잖아
> 그럼 지난 강의에서 배운 리스트 내포를 써보자
A = [ [3,2,8,5], [-6,-3,4,1], [5,-1,13,2] ] for a in A : # [표현식 for 반복문] a = [str(요소) for 요소 in a] print(",".join(a)) >>> 3,2,8,5 -6,-3,4,1 5,-1,13,2
> 이건 리스트에 요소가 추가되도 바로 적용되서 편함
'study with Q - 파이썬' 카테고리의 다른 글
46-48 - 4강 도전 문제 외 (0) 2024.06.02 45 - 4-4절 확인 문제 (0) 2024.05.28 43 - 리스트 내포 (0) 2024.05.22 42 - 리스트, 딕셔너리 함수 (1) 2024.05.01 41 - 4-3절 확인문제 (0) 2024.04.27