1. lex03_string.py
# -*- coding: utf-8 -*-
gdp_global = \
'''Rank Name 2019 Population GDP (IMF) GDP (UN '16) GDP Per Capita
1 UnitedStates 329,064,917 21,410,230 18,624,475 $65,064
2 China 1,433,783,686 15,543,710 11,218,281 $10,841
3 Japan 126,860,301 5,362,220 4,936,212 $42,269
4 Germany 83,517,045 4,416,800 3,477,796 $52,885
5 India 1,366,417,754 3,155,230 2,259,642 $2,309
6 France 65,129,728 3,060,070 2,465,454 $46,984
7 UnitedKingdom 67,530,172 3,022,580 2,647,899 $44,759
8 Italy 60,550,075 2,261,460 1,858,913 $37,349
9 Brazil 211,049,527 2,256,850 1,795,926 $10,693
10 Canada 37,411,047 1,908,530 1,529,760 $51,015
11 SouthKorea 51,225,308 1,777,650 1,411,246 $34,703
12 Russia 145,872,256 1,754,290 1,246,015 $12,026
'''
print(gdp_global)
#1 gdp_global 문자열안에 있는 이스케이프 문자(Escape Sequence, 예: \t, \n)도 함께 출력하세요.
#2 줄단위로 분리하세요.
#3 한국이 있는 줄만 출력하세요.
#4 한국의 인구, gdp(imf)와 1인당 gdp를 출력하세요.
#5 한국의 1인당 gdp를 계산하시오. = gdp / 인구
#1
print(repr(gdp_global))
#2
print(gdp_global.split('\n')) #리스트 타입
#3
lines = gdp_global.split('\n')
print(lines[11], type(lines[11]))
#4
print(lines[11].split())
print(lines[11].split()[2])
line_korea = lines[11].split()
print('인구', line_korea[2])
print('gdp=', line_korea[3])
#5
pop = int(line_korea[2].replace(',', ''))
gdp = int(line_korea[3].replace(',', ''))
print(gdp/pop)
2. lec04_sequence.py
# -*- coding: utf-8 -*-
# Sequence 이해(list, string, tuple)
# 특징 : 순서가 있다. 인덱싱 가능. 배열과 비슷. 0부터 시작
# 인덱싱(indexing), 변경, 슬라이싱(slicing)
# 변경불가(immutable) : string, tuple
# 변경가능(mutable) : list
# 데이터타입변환
# 스트링 -> 리스트, 튜플
print(list('hello'))
print(tuple('hello'))
a=list('hello')
b=tuple('hello')
a[0]='d'
#b[0]='d' #ERROR!! 튜플은 수정 불가
print(a)
print(b)
#튜플 -> 리스트
print(list(b))
#리스트 -> 튜플
print(tuple(a))
# 빈 시퀀스 만들기
string_letter=''
list_cities=[]
tuple_movies=()
# 인덱싱
string_letters='0123456789'
list_cities=['서울', '부산', '대구', '수원']
tuple_movies=(tuple(['인터스텔라', '미션임파서블', '배트맨', '미션임파서블']))
print(string_letters)
print(list_cities)
print(tuple_movies)
print(string_letters[-1]) #맨마지막 원소
print(string_letters[-2]) #맨마지막에서 두번째
print(string_letters[0]) #첫번째
#print(string_letters[20]) #ERROR : string index out of range
#string_letters[0] = 'h' #ERROR!! 스트링은 수정 불가
# 슬라이싱 : [시작:종료:스텝] : 시작부터 종료전까지만
print(string_letters[0:2]) #스탭이 1일때 생략가능
print(string_letters[:2]) #시작이 0이면 생략가능
print(string_letters[-2:]) #종료가 마지막이면 생략가능
print(string_letters[-2:-1])
#Quiz : string_letter 에서 13579만 추출(스텝활용)
print(string_letters[1::2])
#Quiz : string_letter 를 거꾸로 9876543210(스텝활용)
print(string_letters[::-1])
print(string_letters[::]) #전체
print(string_letters[:]) #전체
print(string_letters[3:6]) #345만 추출
#항목개수 얻기 : len()함수
print(len(string_letters))
print(len(list_cities))
print(len(tuple_movies))
# 삭제 : del()함수
del list_cities[0]
print(list_cities)
#del tuple_movies[0] #ERROR!! 튜플은 수정 불가
# 정렬 : sorted() 정렬된 복사본을 반환, 반환값은 항상 리스트
print(sorted(string_letters))
print(sorted(list_cities))
print(sorted(tuple_movies))
# 정렬 reverse
print(sorted(string_letters, reverse=True))
print(sorted(list_cities, reverse=True))
print(sorted(tuple_movies, reverse=True))
# 할당(복사와 다름. 같은 객체를 가리킨다)
a=list_cities
b=string_letters
c=tuple_movies
# + : 결합
print(list_cities + ['전주', '서귀포'])
print(tuple_movies + ('에일리언',)) #튜플이 한개일때는 , 붙여줘야함. 안그럼 string으로 인식해서 그럼
print('ice'+'coffee')
# * : 복제
print('free'*4)
print(list_cities*2)
print(tuple_movies*2)
3. lex04_sequence.py
# -*- coding: utf-8 -*-
# 목표 : 문자열 기본 이해 : casting(문자로 형변환), join, indexing, slicing
#문제1. a=True, b=1일때 string으로 변환한 뒤 변수 c에 다음과 같이 저장하라.
#출력: 'True is 1'
#문제2. 'abcdefghijklmn'에서 마지막 세문자를 출력하라.
#문제3. 'abcdefghijklmn'에서 홀수번째 문자만 출력하라
#단 문자사이에 ,를 넣어서 출력한다
#출력 : a,b,c
#1
a=True
b=1
print(str(a)+' is '+str(b))
#2
text = 'abcdefghijklmn'
print(text[-3:])
#3
print(','.join(text[::2]))
4. lec05_dict.py
# -*- coding: utf-8 -*-
# dictionary 딕셔너리 기본, 심화 : 생성, 추가, in
# 딕셔너리란? key와 value의 쌍으로 이루어진 데이터 형태.
# 자바의 hashmap, json 형태와 동일(자바스크립트)
# 키는 어떤 타입이든 가능. int, str.
# 순서 없음. 시퀀스 아님. 인덱싱 안됨.
# 키는 유일해야 함. (키 == 인덱싱)
# 빈 딕셔너리
com_dic = {}
print(com_dic, type(com_dic))
dom_dic=dict()
print(com_dic, type(com_dic))
# 딕셔너리 생성
com_dic = {'C' : '시스템 프로그래밍 언어',
'Python' : '데이터분석 언어',
'JAVA' : '모바일용 언어'}
print(com_dic, type(com_dic))
# 딕셔너리로 변환 : dict()
member_dict=dict(name='홍길동', id='119', login_date='2020/01/02')
print(member_dict, type(member_dict))
# list를 딕셔너리로 변환 : dict()
prices = dict([['item_a', 100], ['item_b', 200], ['item_c', 300]])
print(prices)
print(prices['item_a'])
'웹_프론트_백엔드 > 단과' 카테고리의 다른 글
[단과_Python] 2020.01.20 (0) | 2020.01.20 |
---|---|
[단과_JAVA] 2020.01.20 (0) | 2020.01.20 |
[단과_JAVA] 2020.01.17 (0) | 2020.01.19 |
[단과_Python] 2020.01.16 (0) | 2020.01.17 |
[단과_JAVA] 2020.01.16 (0) | 2020.01.17 |