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

[단과_Python] 2020.01.16

shine94 2020. 1. 17. 00:25

1. lex01_list.py

# -*- coding: utf-8 -*-
# 목표 : list기본함수: 생성, 추가, 삭제 : .insert(), .index(), append(), extend(), in
# 1. 초기값 'Monday', 'Wednesday'을 갖는 list를 만들라. 
# 출력 : ['Monday', 'Wednesday']
# 2. list_week 맨앞에 'Sunday'를 추가하라. 
# 출력 :['Sunday', 'Monday', 'Wednesday']
# 3. list_week에 'Tuesday'를 'Wednesday'앞에 추가하라.
# 출력 :['Sunday', 'Monday', 'Tuesday', 'Wednesday']
# 4. list_week 맨뒤에  'Thursday'와  Friday'를 추가하라.
# 출력 :['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
# 5. list_week 맨뒤에 'Saturday'를 추가하라.
# 출력 :['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']
# 6. list_week에 Thursday가 있으면 True를/없으면 False를 출력하라. 

#1
list_week = ['Monday', 'Wednesday']
print(list_week)

#2
list_week.insert(0, 'Sunday')
print(list_week)

#3
list_week.insert(2, 'Tuesday')
print(list_week)

#4
list_week.extend(['Thursday', 'Friday'])
print(list_week)

#5
list_week.append('Saturday')
print(list_week)

#6, 존재여부 in -> 있으면 True를/없으면 False를 출력
print('Thursday' in list_week)

 

2. lec02_tuple.py

# -*- coding: utf-8 -*-
# 목표 : tuple 튜플
# 튜플은 모든 항목의 시퀀스, 리스트와 동일, 단 수정불가능(immutable), 상수의 리스트.
# 상수의 리스트. 중복이 됨
# 튜플 패킹, 언패킹

# 빈튜플
movies = ()
print(movies, type(movies))
movies = tuple()
print(movies, type(movies))

# 요소가 하나 있는 튜플 : , 를 해줘야 함, 소괄호가 있어도 되고 없어도 됨
movies = ('스페이스오딧세이', )
print(movies, type(movies))
movies = '스페이스오딧세이', 
print(movies, type(movies))

# 튜플 생성
tuple_sample = (1, 1.2, 'hello')
print(tuple_sample, type(tuple_sample))

# () 없이도 생성 가능
movies = '인터스텔라', '스타워즈', '프로메테우스', '인터스텔라'
print(movies, type(movies))

# 언패킹
a, b, c, d = movies
print(a, b, c, d)

# swap(교환) : 두 개의 변수값을 서로 바꾸는 것.
# a에 b를 넣고, b에 a를 넣는일
print(a, b)
a, b = b, a
print(a, b)

 

3. lec03_string.py

# -*- coding: utf-8 -*-
# 목표 : 문자열 심화 : 문자열 메서드, 내장함수
# 문자열은 시퀀스 중의 하나. 순서가 있다.
# 시퀀스 : 순서가 있는 데이터 구조. 리스트, 튜플, 문자열
# 메서드 확인 방법 : Console 창에 dir('a') 입력 후 Enter

# 내장함수 : 파이썬에서 기본적으로 제공하는 기능
# 메서드 : 해당 클래스에서 제공하는 기능

text = "Hello world! Python is easy to learn!"

# 길이 구하기 : 함수 len()
print(len(text)) 

# 인덱싱 : []. 0부터 시작
print(text[0])  #첫번째
print(text[2])  #세번째

# 문자열 나누기 : .split()
# 공백, 탭, 엔터로 문자열을 나눈다. 결과가 리스트가 나옴
print(text.split())
print(text.split('!'))

# 합치기 : .join()
texts = text.split()
print(texts)
print(' '.join(texts))
print(','.join(texts))

# import this를 사용해서 메서드 익히기
poem = \
'''The Zen of Python, by Tim Peters

Beautiful is Better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts. '''
print(poem)

# Escape character('\n', '\t')가 작동하지 않는 채 string 그대로 출력
print(repr(poem))

#Qize poem은 몇 줄로 되어 있는가?
print(len(poem.split('\n')))

#Qize poem은 몇 개의 단어로 되어 있는가?
print(len(poem.split()))

# 모두 소문자로
print(poem.lower()) #poem은 바뀌지 않음, 아웃풋이 나오는 것이 있는 것일뿐
# 모두 대문자로
print(poem.upper()) #poem은 바뀌지 않음, 아웃풋이 나오는 것이 있는 것일뿐
print(poem)

# 찾기 : .find(), .rfind()
print(poem.find('zen'))  #못찾는 경우는 -1값 출력, 대소문자 구분
print(poem.rfind('better'))
# chain 방식.
print(poem.lower().find('zen'))

# 횟수세기 : .count()
print(poem.count('better'))
print(poem.lower().count('better'))

# 대체하기 : .replace(a, b) : 문자열 a를 문자열 b로 바꾸는 것.
print(poem.lower().replace('better', 'worse'))

###### 기타
# 시작
print(poem.startswith("The"))
# 끝
print(poem.endswith('.'))
# 알파벳과 숫자로만 이뤄졌는지
print(poem.isalnum())

# 양쪽 공백 없애기
print('|'+'         funny'.strip()+'|')
print('funny' == '      funny      ')

# string을 int 바꾸기
print(int('10000000') * 2)  #int형으로 바꿔져서 곱해짐
print('10000000' * 2)    #문자열 두 번 출력됨

#Qize price = '1,000,000'를 int로 변경하기
price = int('1,000,000'.replace(',', ''))
print(price, type(price))

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

[단과_Python] 2020.01.17  (0) 2020.01.19
[단과_JAVA] 2020.01.17  (0) 2020.01.19
[단과_JAVA] 2020.01.16  (0) 2020.01.17
[단과_Python] 2020.01.15  (0) 2020.01.16
[단과_JAVA] 2020.01.15  (0) 2020.01.16