프로그래밍 언어/Python
[Python] 문자열 뒤집는 3가지 방법
Slice / 슬라이싱시작 인덱스 또는 끝 인덱스 또는 step을 넣지 않는다면, 전체를 뜻한다.num = [1,2,3,4,5]print(num[::]) # [1,2,3,4,5] / 전체print(num[2::] # [3,4,5] / index 2부터 끝# step의 의미 => 증가폭num = [1,2,3,4,5,6,7,8,9,10]num[1::2] # index 1번째부터 끝까지 2씩 증가하며 sliceprint(num[1::2]) # [2, 4, 6, 8, 10]-index는 끝 인덱스부터 차례대로 -1 -2 -3 ... 인덱스 값을 뜻하며 전체 길이를 알 수 없을때 용이나게 쓰인다.num = [1, 2, 3, 4, 5]num[-1] # 마지막 요소인 5print(num[-1]) # 5num[1:-1..
[Python] swap, 두 개의 변수를 교환하는 방법
변수a = 10b = 20# a와 b를 교환a, b = b, aprint(a, b)# 출력# 20 10 또 다른 방법으론 swap 함수def swap(a, b): temp = a a = b b = temp return a, b a = 10b = 20# a와 b를 교환swap(a, b)print(a, b)# 출력# 20 10 n개 이상도 가능하다a = 10b = 20c = 30a,b,c = c,b,aprint(a,b,c)# 출력# 30 20 10 리스트arr1 = [1,2,3]arr2 = [4,5,6]arr1 , arr2 = arr2, arr1print(arr1, arr2)# 출력# [4, 5, 6] [1, 2, 3]#요소 위치변경하기arr = [1,2,3,4]arr[0],arr[1] = arr[..
[Python] 연산자
연산자피연산자를 이용해 계산을 하는 기호산술 연산자 : +, -, *, /, %, //, **할당 연산자 : =, +=, -=, *=, /=, %=, //=비교 연산자 : >, >=, 논리 연산자 : and, or, not정수, 실수의 산술 연산에서는 기본적으로 범위가 큰 자료형으로 형변환된다.산술 연산자덧셈)정수, 실수 덧셈num1 = 9; num2 = 3result = num1 + num2print(f'result : {result}')fNum1 = 1.3; fNum2 = 3.14result = fNum1 + fNum2print(f'result : {result}')result = fNum1 + num1print(f'result : {result}')문자(열) 덧셈 : 각 문자를 연결(나열)str1 ..
[Python] f-string (문자열 포메팅 방법 3)
f-string의 모양은 f와 {}만 알면 된다. 문자열 맨 앞에 f를 붙여주고, 중괄호 안에 직접 변수 이름이나 출력하고 싶은것을 바로 넣으면 된다. f'문자열{변수} 문자열'# 문자열 맨 앞에 f를 붙이고, 출력할 변수, 값을 중괄호 안에 넣습니다.s = 'coffee'n = 5result1 = f'저는 {s}를 좋아합니다. 하루 {n}잔 마셔요.'print(result1)예제f-string과 왼쪽 정렬, 오른쪽 정렬, 가운데 정렬py# f-string 왼쪽 정렬s1 = 'left'result1 = f'|{s1:10}|'print(result3) f-string에서 중괄호 출력 방법# f-string 중괄호 출력num = 10result = f'my age {{{num}}}, {{num}}'print..
[Python] % 서식 기호 (문자열 포메딩 방법 2)
% 서식문자의 모양은 % 기호 뒤에 자료형을 가리키는 문자가 온다.만약 정수를 출력한다고 하면 % + d = %dnum = 50s = 'my age %d' % numprint(s) 정수 뿐만 아니라 실수,%s = 문자열%d = 정수%f = 실수 아래도 있다%o = 8진수%x = 16진수%% = 문자 % 표현예제문자열, 정수, 실수를 %로 포메팅# % 기호 문자 출력names = ['kim', 'park', 'lee']for name in names: print('my name is %s' % name)# % 기호 정수 출력money = 10000s2 = 'give me %d won' % moneyprint(s2)# % 기호 실수 출력d = 3.141592print('value %f' % d) 포메팅..
[Python] format 함수 (문자열 포메팅 방법 1)
format 함수에 대해서포메팅이란?문자열 포메팅이란 문자열을 이쁘게 만드는 방법이다, 쉽게 얘기하면 문자열 중간 중간에 특정 변수의 값을 넣어주기 위해서 사용하는 것이다. 예를 들어 구구단 프로그램을 만든다고 가정하면 a b가 변수일 때print('{0} x {1} = 6'.format(a, b, a * b)) 사용법)format 함수는 중괄호 {, } 안에 포메팅을 지정하고 fomat 함수의 인자로 값들을 넣는다.'{인덱스0}, {인덱스1}'.format(값0, 값1) 구구단 예제)a = 2b = 3 s = '구구단 {0} x {1} = {2}'.format(a, b, a * b)print(s)함수 예제직접 대입, 변수로 대입, 이름으로 대입# 직접 대입하기s1 = 'name : {0}'.format..
[Python] 람다식 (무명 함수) 모듈
개념무명 함수의 이름보다 람다식으로 널리 알려진 무명 함수는 이름이 없고 몸체만 있는 간략화된 함수이다. python에서 무명함수의 표현은 lambda 키워드로 만들어 진다.기본 함수와 람다식의 공통점은 다음과 같다.여러개의 인수를 가질 수 있다.기본 함수와 람다식의 차이점은 다음과 같다.반환값은 하나만 존재return 키워드 필요 없고 항상 반환되는 수식만 적어주면 됨.print()함수를 사용할 수 없음자신만의 이름 공간을 가지고 있어 전역변수 참조 불가 구조lambda(인수1,...,인수n : 수식) 람다식과 일반 함수 비교 (동일 결과)### 람다식 ###sum = lambda x, y : x+yprint("합 계산: ", sum(10,20)) # 합 계산 : 30### 일반 함수 ###def ge..
[Python] capitalize(), title() 함수 비교
문자열 s1 = 'abc'가 있을 때 각 함수를 적용한 결과는 다음과 같다. upper() 함수는 모든 문자열을 대문자로 바꾸고, capitalize()와 title()은 문자열의 맨 앞글자만 대문자로 바꾸지만 미묘한 차이가 있다.capitalize() 함수는 문자열 s2의 맨 앞글자인 a만을 대문자 A로 바꾼 반면, title() 함수는 공백을 기준으로 문자열을 분리한듯 a와 d를 각각 대문자 A,D로 바꿨다. 이 경우를 통해 capitalize()와 title()은 다른 결과를 만드는 것을 알 수 있다. 다음 예시에선 s3은 문자열 사이에 숫자가 있는 경우, s4는 문자열 사이에 특수문자가 있는 경우이고 결과는 동일하다. s5에는 숫자, 공백이 포함되어 있다. s5에 각 함수를 적용시켜 보아도 결과..
[Python] 문자열 함수 모음
더하기 연산 (+ 연산자) : 문자열 결합+ 연산자 (더하기 연산자) 를 사용하면, 문자열을 옆으로 붙이게 된다. 즉, 문자열을 결합시킨다.두개의 문자열을 결합시키는 것도 되고, 여러개의 문자열을 결합시킬 수도 있다.더하기 연산자를 이용해서 문자열을 붙일 때, 공백을 포함시켜서 결합시키려면, " " 공백 문자열을 중간에 넣어주면 된다.대소문자 처리하는 upper(), lower(), title() 함수문자열을 대문자 로 바꿀 수 있는 upper()문자열을 소문자 로 바꿀 수 있는 lower() 문자열을 단어 앞만 대문자로 바꿀 수 있는 title() 함수도 있다.문자열을 쪼갤 수 있는 split() 함수 - 쪼갠 결과는 list로 반환아래 예에서, 문자열을 공백( " " ) 으로 쪼갤수 있다. 즉, 문자..
[Python] 딕셔너리 키, 값 쌍 얻기 - items()
>>> car = {"name" : "BMW", "price" : "7000"} >>> car.items() dict_items([('name', 'BMW'), ('price', '7000')]) items 함수를 사용하면 딕셔너리의 값을 반복할 때 키와 값을 접근하기가 매우 유용해진다>>> car = {"name" : "BMW", "price" : "7000"} >>> for key, val in car.items():... print("key : {} value : {}".format(key,val)) key : name value : BMW key : price value : 7000 출처