프로그래밍/Python

정리

tpcable 2021. 2. 18. 15:32

리스트: 순서 O, 중복 O수정 O, 삭제 O

- insert, append

튜플: 순서 O, 중복 O수정 X, 삭제 X

- 하나의 데이터가 저장되는경우, tuple = (값,) 쉼표 입력

- 괄호 없이도 튜플로 저장

딕셔너리: 순서X, 중복 X, 수정 O, 삭제 O

집합: 순서X, 중복 X

- 키값으로만 인덱싱 가능

 

리스트 값 추가 append, index

- 리스트의 append와 index append는 리스트의 제일 마지막에 값 추가, index는 특정 위치에 값 추가

리스트이름.append("value")

리스트이름.insert(index, "value")

 

리스트 값 삭제 del, remove

- del은 인덱스 위치의 값을 삭제, remove는 원하는 값을 삭제

del 배열[index]

remove.배열[(value)

 

리스트 원소를 문자열로 변환 join

'공백 or 값'.join(변수)

 

슬라이싱 [시작인덱스:마지막인덱스:오프셋]

- 인덱스 2간격으로 출력

result = "012345"

print(result[::2])

출력

024

- 값을 거꾸로 출력

result = "012345"

print(result[::-1])

출력

543210

 

줄바꿈 없이 문자 출력, 끝 부분을 다음 라인과 연결 end=" "

print("test",end="공백 or 또는 특정값")

 

문자열 치환 replace()

- 문자열은 수정할 수 없는 자료형이라 기존 문자열은 그대로 두고 치환된 문자열 리턴

result = "test-test"

print(result.replace("-","/"))

출력

test/test

 

바인딩 된 변수 출력 방법 %formatting, format(), f-string

- % formatting

print("이름: %타입 나이: %타입" % (변수1, 변수2))

 

- format() 타입 상관없이 {} 입력

print("이름: {} 나이: {}".format(변수1, 변수2))

 

- f-string 문자열 앞에 f 추가

print(f"이름: {변수1} 나이: {변수2}")

 

문자열의 좌우 공백제거 strip(), rstrip()는 오른쪽, lstript() 왼쪽 공백제거

a = " dd          "

print(a.strip())

출력

dd

 

문자열 분리 split()

- 분리 후 리스트로 변형 

print(변수.split("분리할 문자")

 

-split 한 값을 변수 A, B에 대입

변수A, 변수B = 문자.split()

 

- split 한 [0] 배열값을 저장

변수A = 변수B.split("구분문자")[0]

 

출력값 분리 sep= " "

- 출력 되는 값 사이 구분 인자

print("1", "2", "3", sep=";")

 

startswith, endswitch

- 문자열이 특정값으로 시작 또는 끝나는지 판별 결과는 True, False

변수.endswith(("값1,"값2"))

 

배열 sort, sorted 

- sort는 원본 변경, sorted는 그대로

변수.sort()

print(변수)

 

변수2 = sorted(변수1)

 

딕셔너리 값 추가, 수정도 동일

변수 = {}

변수["key"] =value

 

딕셔너리 값 출력

변수["key"]

변수.keys() 키출력

변수.values() 값출력

변수.iteams() 키, 값 출력

 

딕셔너리 값 삭제

del 변수["key"]

 

딕셔너리1 + 딕셔너리2

딕셔너리.update(딕셔너리2)

 

zip을 통해 다른 튜플 또는 리스트간 묶을 수 있다.

zip(tuple1, tuple2)

 

if 문

- 배열에 있는지 확인 

list = []

if 변수 in list:

 

- 대소문자 구분 결과값은 True, False

변수. islower() 

변수.isupper()

 

이중 for문

for i in 변수:

   for j in i:

      print(j)

 

함수는 객체 생성 -> 리소스 (메모리) 할당

def 함수이름():

         코드

람다는 즉시 실행(heap 초기화) -> 메모리 초기화

lamda 이름: 코드

 

클래스: 객체나 인스턴스의 설계도(찍어내는 도구의 역할)

객체, 인스턴스: Class로 부터 생성되어 메모리에 할당되는..

 

*변수,_,_ = 리스트 이름

_의 경우 변수의 역할이 필요해서 값을 적었으나 의미 없는 경우를 표현

 

파일

파일 읽기: r

쓰기(기존 파일 삭제): w

추가(파일 생성 또는 추가): a

 

 

방법1

f = open("파일의경로","작업")

변수2 = f.read()

f.close()

# 반드시 close 리소스 반환

--------------------------------------------------

방법2. with

with open("파일의 경로", "작업") as 변수:
   c = 변수.read()

# close 리소스 반환 x

--------------------------------------------------

방법3

with open ("파일의 경로","작업") as 변수:

  for c in 변수:

 

방법3

변수.readline()

을 통해 한문장 씩 읽어 올 수 있음

 

방법4

변수.readlines()

모든 문장을 \n 일 기준으로 리스트 형태로

 

csv 파일 가져오기

delimiter 를 통해 다른 구분자 분리

with open("파일명","r",encoding='euc-kr') as f:

      reader = csv.reader(f, delimiter="|")

 

csv.DictReader(변수)를 통해 딕셔너리 형태로 가져올 수 있음

'프로그래밍 > Python' 카테고리의 다른 글

파이썬 sqlite3  (0) 2021.02.20