파이썬-py

파이썬 자료형&변수

it 킹왕짱 2022. 7. 21. 03:34
728x90
  • a=' 숫자든 문자들 따옴표 내부 문자는 문자열 ' 
  • a=숫자 // 그냥 숫자
  • '%s%%' %9 >>> '9%' 
  • len(a) : 문자열 길이
  • '%10s' 전체길이가 10인 오른쪽 문자열     '%-10s' 전체길이가 왼쪽 문자열
  • '%0.4f' %5.42 >>> 5.4200 소수점자리가 4자리
  • 변수.count('문자') >>> 문자의 개수 세기
  • 변수.find('문자') >>> 문자의 위치 인덱스를 알려줌
  • 변수.index('문자') >>> 문자의 인덱스 위치를 알려줌
  • ",".join('abcd') >>> 각 문자 사이에 , 를 추가 함
  • a.upper(), a.lower() >>> 대문자 소문자 변환
  • a.lstrip() >>> 왼쪽 공백 없애기 a.rstrip() >>> 오른쪽 공백 없애기 a.strip() >>> 양쪽 공백 없애기
  • a.replace("a","b") 문자열 a를 문자열 b로 변경
  • a.split() 문자열 나누기 a.split(':') >>> 괄호 안의 문자로 구분해서 나누기

 

format() , f'{ }'

>>>"i eat {0} apple {1}.".format(3,"five")
>>> i eat 3 apple five
>>> "{0:<10}".format("hi")
'hi        '
>>> "{0:>10}".format("hi")
'        hi'
>>> "{0:^10}".format("hi")
'    hi    '
>>> "{0:=^20}".format("hi")
'=========hi========='
>>> y=3.421345
>>> "{0:0.4f}".format(y)
'3.4213'
>>> "{0:10.4f}".format(y)
'    3.4213'
>>> "{{ -and-}}".format()
'{ -and-}'
>>> name='길동이'
>>> age=250
>>> f'나의 이름은 {name}이고 내년에는 {age+1}이 된다'
'나의 이름은 길동이이고 내년에는 251이 된다'
>>> d={'name:'홍길동','age':30}
>>> f'나의 이름은 {d["name"]}이고 나이는 {d["age"]}입니다.'
'나의 이름은 홍길동이고 나이는 30입니다.'
>>> f'{"hi":<10}'
'hi        '
>>> f'{"hi":>10}'
'        hi'
>>> f'{"hi":^10}'
'    hi    '
>>> f'{"hi":!<10}'
'hi!!!!!!!!'
>>> f'{y:10.4f}'
'    3.4213'
>>> f'{{--and--}}'
'{--and--}'

 

리스트명 = [원소1, 원소2, [원소[2][0], 원소[2][1]...]...] 

>>> a=[1,2,3,['a','b'],4,5]
>>> a[3][:]
['a', 'b']
  • 리스트 더하기 : + <같은 자료형끼리 가능>
  • 리스트 반복 : *
  • 리스트 길이 구하기 : len(리스트명)
  • 리스트 수정 : 리스트명[인덱스]=바꿀 값
  • 리스트 삭제 : del 리스트명[인덱스]
  • 리스트 뒤에 추가 : 리스트명.append(값)
  • 리스트 정렬 : 리스트명.sort()
  • 리스트 리버스 : 리스트명.reverse()
  • 인덱스 위치 출력 : a.index(값)
  • 리스트 요소 삽입 : a.insert(인덱스, 값)
  • 리스트 요소 제거 : a.remove(값) <첫번째 나오는 값 삭제>
  • 리스트 요소 꺼내기 : a.pop() <마지막 요소 꺼내고 삭제>        a.pop(인덱스) <인덱스 값 꺼내고 삭제>
  • 리스트 요소 개수 세기 : a.count(값)
  • 리스트 요소 확장 : a.extend([원소1,원소2...]) <리스트 뒤에 추가 됨>

 

튜플=(원소1, 원소2, 원소3...) : 값 변경 불가능 제외 리스트와 유사

  • 원소 하나일 경우 : t1 = (1,)   <요소 뒤 컴마 필수>

 

딕셔너리={key1 : Value1, key2 : Value2, key3 : Value3... } : 해시 테이블처럼 대응 관계를 가짐

  • key = 중복X
>>> a = {1:'hi', 'vary': [1,2,3]}
>>> a
{1: 'hi', 'vary': [1, 2, 3]}
>>> a={1:'a'}
>>> a[2]='b'	##a[key]=value
>>> a['name']='hong'
>>> a[3]=[4,5,6]
>>> a
{1: 'a', 2: 'b', 'name': 'hong', 3: [4, 5, 6]}
>>> del a[2]	## del 변수[key]
>>> a
{1: 'a', 'name': 'hong', 3: [4, 5, 6]}
>>> ## del 변수[key]
>>> a['name']	##변수[key] -> value
'hong'
>>> ## key 리스트 만들기
>>> a={'name' : 'hong', 'age' : 30}
>>> a.keys()
dict_keys(['name', 'age'])
>>> for i in a.keys():
	print(i)

	
name
age
>>> list(a.keys())	## key 객체를 리스트로 변환
['name', 'age']
>>> a.values()		## value 리스트 만들기
dict_values(['hong', 30])
>>> a.items()	## key value 얻기
dict_items([('name', 'hong'), ('age', 30)])
>>> a.clear()
>>> a
{}
>>> a={'name' : 'hong', 'age' : 30}
>>> a.get('name')	##key로 value 얻기
'hong'
>>> a.get('year','not key')	##key가 없으면 설정한 디폴트 값을 반환
'not key'
>>> 'name' in a
True
>>> 'year' in a
False

 

 

집합 자료형 = set([리스트] or '문자열')

  • 집합 자료형은 중복과 순서가 없다 인덱싱으로 값을 얻을 수 없음
>>> s=set([1,2,3])
>>> s
{1, 2, 3}
>>> s=set('helloworld')
>>> s
{'e', 'd', 'r', 'w', 'l', 'o', 'h'}
>>> ## 집합 자료형은 중복과 순서가 없다 인덱싱으로 값을 얻을 수 없음
>>> list1=list(s)
>>> list1
['e', 'd', 'r', 'w', 'l', 'o', 'h']
>>> list1[3]
'w'
>>> tuple1=tuple(s)
>>> tuple1
('e', 'd', 'r', 'w', 'l', 'o', 'h')

>>> s1= set([1,2,3,4])
>>> s2= set([5,2,3,8])
>>> ##교집합##
>>> s1&s2
{2, 3}
>>> s1.intersection(s2)
{2, 3}
>>> ##합집합##
>>> s1 | s2
{1, 2, 3, 4, 5, 8}
>>> s1.union(s2)
{1, 2, 3, 4, 5, 8}
>>> ##차집합##
>>> s1-s2
{1, 4}
>>> s2-s1
{8, 5}
>>> s1.difference(s2)
{1, 4}
>>> ##값 여러개 추가하기##
>>> s1.update([9,10,11])
>>> s1
{1, 2, 3, 4, 9, 10, 11}
>>> ##특정값 제거##
>>> s1.remove(4)
>>> s1
{1, 2, 3, 9, 10, 11}

 

 

불 자료형 : True, False

>>> bool('')
False
>>> bool([1,2,3])
True
>>> bool()
False
>>> bool(3)
True
>>> bool(0)
False

 

 

변수

>>> a=[1,2,3]
>>> id(a)	##변수 a의 주소값
26791088
>>> b=a
>>> id(b)
26791088
>>> a is b
True
>>> a
[1, 2, 3]
>>> b
[1, 2, 3]
>>> a[1]=[2,3,4,5]
>>> a
[1, [2, 3, 4, 5], 3]
>>> b
[1, [2, 3, 4, 5], 3]

>>> ##주소값을 다르게 복사##
>>> c=a[:]
>>> id(a)
26791088
>>> id(c)
66810664
>>> from copy import copy
>>> d=copy(a)
>>> d is a
False

>>> ##변수를 여러가지 만들기##
>>> a,b=['py','c'],('ppyy','cc')
>>> a
['py', 'c']
>>> b
('ppyy', 'cc')
>>> a,b=3,5
>>> a,b=b,a
>>> a
5
>>> b
3

 

 

 

 

 

출처: https://wikidocs.net/book/1

728x90
728x90

'파이썬-py' 카테고리의 다른 글

클래스, 모듈.py  (0) 2022.07.25
사용자 입력과 출력.py  (0) 2022.07.25
함수.py  (0) 2022.07.25
제어문 <if문 while문 for문>  (0) 2022.07.21
두근두근 파이썬 CH 1 <예제, 연습문제>  (0) 2022.05.23