Self-Improvement

Head First Python 3장 본문

프로그래밍/Python

Head First Python 3장

JoGeun 2018. 10. 21. 13:01

*리스트
리스트를 기본 복사를하면 같은 자원을 공유하게됨 

second = first
second와 first의 값이 복사가 되어진것 같지만 second 리스트에 값을 넣고 확인하면 first에도 값이 같이 들어가게 되어 공유가 되어진 것이다.




리스트를 복사를 할 경우에는 copy()라는 함수를 사용하면 되어진다.




*딕셔너리
딕셔너리의 데이터는 순서가 없으며 키값을 이용하여 찾는다. 

딕셔너리를 포함하는 딕셔너리 
people['ford']={ 'name': 'ford prefece', 'Gender': 'male'} 
people['ford']['name'] 하면 ford의 들어있는 name 값이 출력됨




*집합
집합은 중복을 허용하지 않으며 삽입 순서를 유지하지 않는다 
vowels = {'a', 'a', 'b', 'c', 'c'} 
print (vowels) 하면 중복된 값을 제외하고 출력이 된다.




set()함수를 이용하여 쉽게 집합을을 만들수 있다. 
vowels= set('abcc') 



집합의 합집합은 union 
집합의 교집합은 intersection 
집합의 차집합은 difference

*튜플
튜플은 데이터가 변하지 않는 특징을 가지며 하나의 데이터만 입력시엔 아래처럼 해야한다.
tuple = ('a',) 
※하나의 데이터를 넣을떈 콤마를 넣어줘야함



콤마를 안하게 되면 str타입으로 되어진다.


*vowels4.py 예제



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

#! /usr/bin/python3 

vowels = ['a', 'e', 'i', 'o', 'u']     
#리스트를 생성
word = input ("Provide a word to search for vowels: ")   
#키보드로 받음
found = {}   
#빈 딕셔너리 만듬

for letter in word:     
    if letter in vowels: 
        found.setdefault(letter,0)  
 #setdafault()는 존재하지 않으면 생성을 시킴 ( 생성안하고 값을 넣게되면 오류)
        found[letter] += 1   
 #해당 값을 +1 한다
for k,v in sorted(found.items()):   
 #sorted()는 정렬하게 해준다.
    print(k, 'was found', v, 'time(s).')
---------------------------------------------------




*vowels7.py 예제



---------------------------------------------------
#! /usr/bin/python3 

vowels = set('aeiou')   
  #set()함수는 집합으로 만들어줌
word = input("Provide a word to search for vowels: ") 
found = vowels.intersection(set(word))   
#intersection은 교집합으로 vowels와 word의 중복되는걸 found로

for vowel in found: 
    print(vowel)
---------------------------------------------------




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

python request 모듈  (0) 2018.10.21
Head First Python 5-1장  (0) 2018.10.21
Head First Python 4장  (0) 2018.10.21
Head First Python 2장  (0) 2018.10.21
Head First Python 1장  (0) 2018.10.21