"파이썬 스터디4"의 두 판 사이의 차이
seonae's wiki
(새 문서: 스터디 홈 {{스터디 |스터디이름 = 2019 파이썬 스터디 |일정 = 2019/1/31 4-5시 |장소 = 강의동 110호 |참여인원 = 광우,...) |
|||
| 2번째 줄: | 2번째 줄: | ||
{{스터디 | {{스터디 | ||
|스터디이름 = 2019 파이썬 스터디 | |스터디이름 = 2019 파이썬 스터디 | ||
| − | |일정 = 2019/ | + | |일정 = 2019/2/7 4-6시 |
|장소 = 강의동 110호 | |장소 = 강의동 110호 | ||
|참여인원 = 광우,선애,승진,나라,에릭,인혁 | |참여인원 = 광우,선애,승진,나라,에릭,인혁 | ||
|내용 = 파이썬기초 : 자료형(집합), 내장리스트, 제어문 | |내용 = 파이썬기초 : 자료형(집합), 내장리스트, 제어문 | ||
}} | }} | ||
| + | |||
| + | ===자료형:집합=== | ||
| + | *집합(set) : 순서없이, 중복없이, 여러값을 모아놓은 자료형. | ||
| + | |||
| + | <pre> | ||
| + | >>> a = set() #빈 집합객체 생성. 공집합 | ||
| + | >>> b = {1,2,3} #집합 | ||
| + | >>> set([1,2,3]) #리스트 변환 | ||
| + | >>> set("Hello") #문자열 변환 | ||
| + | >>> set((1,2,3)) #튜플 변환 | ||
| + | >>> set((1,2,3,1,2,3,1,2,3)) | ||
| + | |||
| + | >>> l1 = list(s1) #리스트로 변환 | ||
| + | >>> t1 = tuple(s1) #튜플로 변환 | ||
| + | </pre> | ||
| + | |||
| + | ====집합의 연산:교집합, 합집합, 차집합==== | ||
| + | <pre> | ||
| + | #2개의 집합 | ||
| + | >>> s1 = set([1, 2, 3, 4, 5, 6]) | ||
| + | >>> s2 = set([4, 5, 6, 7, 8, 9]) | ||
| + | |||
| + | #교집합(intersection) | ||
| + | >>> s1 & s2 | ||
| + | >>> s1.intersection(s2) | ||
| + | |||
| + | #합집합(union) | ||
| + | >>> s1 | s2 | ||
| + | >>> s1.union(s2) | ||
| + | |||
| + | #차집합(difference) | ||
| + | >>> s1 - s2 | ||
| + | >>> s2 - s1 | ||
| + | >>> s1.difference(s2) | ||
| + | >>> s2.difference(s1) | ||
| + | |||
| + | #그외 | ||
| + | >>> A={1,2,3,4,5} | ||
| + | >>> B={1,2,3} | ||
| + | >>> 2 in A #2∈A | ||
| + | >>> 2 not A #2∉A | ||
| + | >>> A.issuperset(B) #A⊃B | ||
| + | >>> B.issubset(A) #B⊂A | ||
| + | >>> A.isdisjoint(B) #교집합이 공집합인가? | ||
| + | </pre> | ||
| + | |||
| + | ====집합 관련 메소드==== | ||
| + | <pre> | ||
| + | >>> a = {1,2,3} | ||
| + | >>> len(a) | ||
| + | |||
| + | #값 추가하기 | ||
| + | >>> s1 = set([1, 2, 3]) | ||
| + | >>> s1.add(4) #1개만 추가 | ||
| + | >>> s1 | ||
| + | >>> s1.update([5, 6, 7]) #여러개추가 | ||
| + | >>> s1 | ||
| + | |||
| + | #제거하기 | ||
| + | >>> a = {1,2,3,4,5,6,7,8,9} | ||
| + | >>> a.clear() #전체 원소를 제거 | ||
| + | >>> a = {1,2,3,4,5,6,7,8,9} | ||
| + | >>> a.discard(4) | ||
| + | >>> a.discard(4) #원소가 없으면 pass | ||
| + | >>> a.remove(5) | ||
| + | >>> a.remove(5) #원소가 없으면 error | ||
| + | >>> a.pop() | ||
| + | </pre> | ||
| + | |||
| + | ====연습문제==== | ||
| + | *set을 이용하여 중복제거해보기 | ||
| + | <pre>>>> a = [1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5]</pre> | ||
| + | *집합연산하기 | ||
| + | <pre> | ||
| + | >>> U = {1,2,3,4,5,6,7,8,9,10} #전체집합 | ||
| + | >>> A = {1,3,5,7,9} #부분집합1 | ||
| + | >>> B = {1,2,3,4,5} #부분집합2 | ||
| + | </pre> | ||
| + | #문제 1 : A∩B<sup>C</sup> | ||
| + | #문제 2 : (A∪B)<sup>C</sup> | ||
| + | ===제어문=== | ||
2019년 1월 27일 (일) 13:19 판
| 2019 파이썬 스터디 | |
|---|---|
| 일정 | 2019/2/7 4-6시 |
| 장소 | 강의동 110호 |
| 참여인원 | 광우,선애,승진,나라,에릭,인혁 |
| 내용 | 파이썬기초 : 자료형(집합), 내장리스트, 제어문 |
자료형:집합
- 집합(set) : 순서없이, 중복없이, 여러값을 모아놓은 자료형.
>>> a = set() #빈 집합객체 생성. 공집합
>>> b = {1,2,3} #집합
>>> set([1,2,3]) #리스트 변환
>>> set("Hello") #문자열 변환
>>> set((1,2,3)) #튜플 변환
>>> set((1,2,3,1,2,3,1,2,3))
>>> l1 = list(s1) #리스트로 변환
>>> t1 = tuple(s1) #튜플로 변환
집합의 연산:교집합, 합집합, 차집합
#2개의 집합
>>> s1 = set([1, 2, 3, 4, 5, 6])
>>> s2 = set([4, 5, 6, 7, 8, 9])
#교집합(intersection)
>>> s1 & s2
>>> s1.intersection(s2)
#합집합(union)
>>> s1 | s2
>>> s1.union(s2)
#차집합(difference)
>>> s1 - s2
>>> s2 - s1
>>> s1.difference(s2)
>>> s2.difference(s1)
#그외
>>> A={1,2,3,4,5}
>>> B={1,2,3}
>>> 2 in A #2∈A
>>> 2 not A #2∉A
>>> A.issuperset(B) #A⊃B
>>> B.issubset(A) #B⊂A
>>> A.isdisjoint(B) #교집합이 공집합인가?
집합 관련 메소드
>>> a = {1,2,3}
>>> len(a)
#값 추가하기
>>> s1 = set([1, 2, 3])
>>> s1.add(4) #1개만 추가
>>> s1
>>> s1.update([5, 6, 7]) #여러개추가
>>> s1
#제거하기
>>> a = {1,2,3,4,5,6,7,8,9}
>>> a.clear() #전체 원소를 제거
>>> a = {1,2,3,4,5,6,7,8,9}
>>> a.discard(4)
>>> a.discard(4) #원소가 없으면 pass
>>> a.remove(5)
>>> a.remove(5) #원소가 없으면 error
>>> a.pop()
연습문제
- set을 이용하여 중복제거해보기
>>> a = [1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5]
- 집합연산하기
>>> U = {1,2,3,4,5,6,7,8,9,10} #전체집합
>>> A = {1,3,5,7,9} #부분집합1
>>> B = {1,2,3,4,5} #부분집합2
- 문제 1 : A∩BC
- 문제 2 : (A∪B)C