"파이썬 스터디4"의 두 판 사이의 차이

seonae's wiki
이동: 둘러보기, 검색
(새 문서: 스터디 홈 {{스터디 |스터디이름 = 2019 파이썬 스터디 |일정 = 2019/1/31 4-5시 |장소 = 강의동 110호 |참여인원 = 광우,...)
 
2번째 줄: 2번째 줄:
 
{{스터디
 
{{스터디
 
|스터디이름 = 2019 파이썬 스터디
 
|스터디이름 = 2019 파이썬 스터디
|일정 = 2019/1/31 4-5시
+
|일정 = 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 판

스터디 홈


자료형:집합

  • 집합(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. 문제 1 : A∩BC
  2. 문제 2 : (A∪B)C

제어문