웹_프론트_백엔드/단과

[단과_Python] 2020.01.22

shine94 2020. 1. 22. 22:32

1. lec04_for.py

#--------------------------------
# in 순회가능한 객체(iterable) : 리스트, 튜플, 딕셔너리, 스트링, zip(), range(), 셋
#Quiz [10,9,8,7,6,5,4,3,2,1,0]
print(list(range(10, -1, -1)))

# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# list의 append()를 이용하여 만들기: for, range, append()를 이용하여 만들기
list_a=[]
#in 순회가능한 객체(열겨형)에서 원소를 하나씩 꺼낸다. 빌 때까지
for i in range(1, 10, 1) :  
    list_a.append(i)
print(list_a)

#Quiz [1,3,5,7,9], [0,2,4,6,8,10]
#1. for문을 사용
list_odd = []
for i in range(1, 10, 2) : 
    list_odd.append(i)
print(list_odd)
#2. for문을 사용 않함
print(list(range(1,10,2)))

#string : h,e,l,l,o, 출력
for c in 'hello' : 
    print(c, end=',')
#join을 활용
print(','.join('hello'))
print(','.join(['서울', '부산', '인천'])) 

#list
for i in [1,2,3,4,5] :
    print(i, end=' ')
for i in ['서울', '부산', '인천'] :
    print(i, end=' ')

#dict
prices = {'item_a' : 200, 'item_b' : 380, 'item_c' : 240, 'item_d' : 1000, }
#key만
for k in prices :
    print(k, end=' ')
print()
#key만
for k in prices.keys() :
    print(k, end=' ')
print()
#value만
for v in prices.values() : 
    print(v, end=' ')    
print()   

# key, value 다 출력
for k in prices :
    print(k, prices[k], end=' ')
print()

#튜플
for item in prices.items() :
    print(item)

#언패킹
for key, value in prices.items() :
    print(key, value)

for item in prices.items() :
    print(item[0], item[1])

# enumerate : index와 value 둘 다 필요할 때
list_a=[1,2,3,4,5]
#100씩 다 더해주고 싶을 때, for문을 사용해서.
i=0
for a in list_a : 
    list_a[i] += 100
    i+=1
    print(a)
print(list_a)

list_a=[1,2,3,4,5]
for i, b in enumerate(list_a) :
    list_a[i] += 100
print(list_a)

for i, b in enumerate(list_a, 10) :
    print(i, b)

2. lex04_for.py

# -*- coding: utf-8 -*-
# 목표 : for문과 sequence 이해
#1. alphabet_str = 'abcd...z'을 이용하여 spell로 이루어진 list를 만들라.
# list_alphabet = ['a', 'b', 'c' ... 'z']
#2. list_alphabet에서 모음을 모두 제거하라(for문 사용). a,e,i,o,u
# list_alphabet = ['b', 'c', 'd', 'f' ... 'z']. list의 remove() 메서드 사용
#3. list의 alphabet을 a-b-c의 형태로 출력하라.

#1.
list_alphabet = list('abcdefghijklmnopqrstuvwxyz')
print(list_alphabet, len(list_alphabet))

#2.
for a in 'aeiou' :
    list_alphabet.remove(a)
print(list_alphabet, len(list_alphabet))

#3 join()을 사용
print('-'.join(list_alphabet))

3. lec01_dic_word_count.py

# -*- coding: utf-8 -*-
lyrics = \
'''
Okay, can I just, say something crazy?
I love crazy!
All my life has been a series of doors in my face
And then suddenly I bump into you
I was thinking the same thing! 'Cause like
I've been searching my whole life to find my own place
And maybe it's the party talking or the chocolate fondue
But with you
But with you
I found my place
I see your face
And it's nothing like I've ever known before!
Love is an open door!
Love is an open door!
Love is an open door!
With you!
With you!
With you!
With you!
Love is an open door
I mean it's crazy
What?
We finish each other's
Sandwiches!
That's what I was gonna say!
I've never met someone
Who thinks so much like me!
Jinx! Jinx again!
Our mental synchronization
Can have but one explanation
You…
'''

print(lyrics)

# text cleaning
#1. 소문자로
lyrics_lower = lyrics.lower()
print(lyrice_lower)

#2. special character(특수문자 제거:정규식으로 제거)
#2.1 special character(집합으로)
alphabet_set = set('abcdefghijklmnopqrstuvwxyz')
special_char = set(lyrice_lower) - alphabet_set
print(special_char)

#2.2 special char 을 space로 치환
for a in special_char :
    lyrics_lower = lyrics_lower.replace(a, ' ')
print(lyrics_lower)

#3. 단어로 나눔(space로 나눔) default: space, tab, newline으로 split.
words = lyrics_lower.split()
print(words)

#4. 어휘 사전 -> #5. word count (다음시간에 배울 예정)

4. lec05_comprehension.py

# -*- coding: utf-8 -*-

# 컴프리헨션 comprehension : 순회가능한 객체(iterable)로부터 자료구조 생성

#1. [0,1,2,3,4,5,6,7,8,9]
list_a=[]
for a in range(10):
    list_a.append(a)
print(list_a)

#2. list()를 이용
list_a = list(range(10))
print(list_a)

#3. comprehension [0,1,2,3,4,5,6,7,8,9]
list_a = [a for a in range(10)]
print(list_a)

#3. comprehension [0,2,4,6,8]
list_a = [a*2 for a in range(5)]
print(list_a)

text="ABcd"
#comprehension으로 대문자로 ['A', 'B', 'C', 'D']
list_a = [a.upper() for a in text]
print(list_a)

#comprehension으로 대문자만 출력 : 조건문을 주는 경우
list_a = [a for a in text if a.isupper()]
print(list_a)

#for문으로 구현 ['A', 'B']
text="ABcd"
list_a = []
for a in text : 
    if a.isupper() :
        list_a.append(a)
print(list_a)

5. lec01_func.py

# -*- coding: utf-8 -*-
#함수정의와 호출

#함수정의
#형식 : def 함수이름(매개변수들 ,로 분리) :
#   들여쓰기가 블럭이므로 들여쓰는 부분이 함수의 본체(body)

def func() :
    pass
#pas: 코드 없이 지나가고자 할 때

#함수호출 : 함수이름()
func()

#함수 1.
def greetings() :
    print("hello")
greetings()

'웹_프론트_백엔드 > 단과' 카테고리의 다른 글

[단과_Python] 2020.01.23  (0) 2020.01.23
[단과_JAVA] 2020.01.23  (0) 2020.01.23
[단과_JAVA] 2020.01.22  (0) 2020.01.22
[단과_Python] 2020.01.21  (0) 2020.01.22
[단과_JAVA] 2020.01.21  (0) 2020.01.22