파이썬 기초
1.파이썬 기본 문법
1.input
======실행코드======
var1=input() print(var1) print(type(var1))
======실행결과======
20 20 <class 'str'>
>>var1이란 변수에 input()함수를 통해 키보드에서 입력을 받고 그 자료형은 str로 들어간다.
2.자료형 변형
======실행코드======
var1=int(input()) print(var1) print(var1,type(var1)) var1=str(var1) print(var1,type(var1)) var1=float(var1) print(var1,type(var1))
======실행결과======
20 20 20 <class 'int'> 20 <class 'str'> 20.0 <class 'float'>
>>int(),float,str() 괄호 안에 변수를 넣음으로써 변수의 자료형을 변형할 수 있고 var1=int(input())을 통해 입력값을 넣고 정수형으로 바로 변형시켜 변수에 초기화 가능하다.
3.시퀀스자료형
======실행코드======
strdata = 'abcde' #문자열자료형 listdata = [1,[1,2],'안녕'] #리스트자료형 tupledata = (100,200,300) #튜플자료형 # print(strdata) print(listdata) print(tupledata) # print(strdata[0]) print(listdata[1]) print(tupledata[2]) # print(strdata[1:]) print(listdata[1:2]) print(tupledata[:])
======실행결과======
abcde [1, [1, 2], '안녕'] (100, 200, 300) a [1, 2] 300 bcde [[1, 2]] (100, 200, 300)
>>시퀀스자료형이란 순서가 있는 자료형을 말하며 리스트,튜플,문자열등의 자료형이있다.이자료형들은 인덱싱을 통해 자료안의 데이터를 꺼낼 수 있으며 슬라이싱을 통해 여러데이터를 한번에 뽑아올 수 있다.
4 .조건문
======실행코드======
answer=25; submit=int(input()); if (submit>answer): print("정답보다 더 큰 수를 입력했습니다."); elif (submit<answer): print("정답보다 더 작은 수를 입력했습니다."); else: print("정답!");
======실행결과======
20 정답보다 더 작은 수를 입력했습니다.
>>if,elif,else를 통해 조건을 통해 원하는 코드를 실행 할 수 있으며 if에서 조건의 결과가 false라면 false라는 조건 중에서 elif를 판단하고 elif의 결과도 false라면 else의 구문을 실행한다.
5.반복문
======실행코드======
# 리스트를 범위로 지정한 예 list = [1, 2, 3, 4, 5] for num in list: print(num,end=' ') # range()를 범위로 지정한 예 print() for num in range(10): print(num,end=' ')
======실행결과======
1 2 3 4 5 0 1 2 3 4 5 6 7 8 9
>>for num in list 구문을 통해 num변수에 차례로 list의 데이터를 하나하나 받아와 반복을 수행하며 for num in range(10)구문은 range가 0~9까지의 숫자를 생성하여 num이 차례로 받아와 반복을 수행한다.
2.파이썬 내장함수 및 메소드
1.내장함수
- type
>>print(type(var))
var변수의 자료형을 출력
- divmod
>>ret1, ret2 = divmod(a,b)
a를 b로 나눈 몫과 나머지를 각각 ret1,ret2에 저장(a가 실수형일 경우 int(a)로 형변환후 divmod연산을 수행한다.)
- hex,bin
>>h1 = hex(97)
>>a = int(h1,16)
>>b1 = bin(97)
>>b = int(b1,2)
hex는 16진수로 변환,bin은 2진수로 변환하여 저장하고 int의 두번째 인자에 데이터의 진수를 입력하여 10진수로 변환
- abs,round
>>abs1 = abs(-3)
>>abs2 = abs(-3.25)
>>ret1 =round(16.554,2)
>>ret2 =round(1118,-1)
abs는 정수든 실수든 자료형을 유지하며 절댓값을 반환하고 round는 두번째 인자에 원하는 소수점을 넣어 반올림(round의 두번째인자의 음숫값은 소수점 왼쪽자리이다.)
- min,max
>>maxlist = max(listdata)
>>minlist = min(listdata)
max는 시퀀스자료형의 가장 큰 요소를 반환하고 min은 가장 작은 요소를 반환(round의 두번째인자의 음숫값은 소수점 왼쪽자리이다.)
- len
>>word_len = len(word)
시퀀스자료형의 길이를 반환2.문자열 메서드
- isalpha(),isdigit()
======실행코드======txt1 = 'A' ret1 = txt1.isalpha() txt2 = 'Warcraft Three' ret2 = txt2.isalpha() txt3 = '010-1234-5678' ret3 = txt3.isdigit() txt4 = '010 1234 5678' ret4 = txt4.isdigit() print(ret1,ret2,ret3,ret4)
======실행결과======
True False False False
>>특정 문자열이 한글이나 알파벳으로만 구성되어 있는지 확인하여 불린자료형으로 반환
(공백도 false로 간주하여 반환한다.)
- upper(),lower()
======실행코드======txt = 'Python is a widely used High-level Programming Language for general-purpose programming.' ret1 =txt.upper( ret2 =txt.lower() # print(ret1) print(ret2) print(txt)
======실행결과======
PYTHON IS A WIDELY USED HIGH-LEVEL PROGRAMMING LANGUAGE FOR GENERAL-PURPOSE PROGRAMMING. python is a widely used high-level programming language for general-purpose programming. Python is a widely used High-level Programming Language for general-purpose programming.
>>upper은 대문자,lower은 소문자로 변형시키며 원본은 유지한다.
- lstrip(),rstrip(),strip()
======실행코드======txt = ' 양쪽에 공백이 있는 문자열입니다. ' ret1 =txt.lstrip() ret2 =txt.rstrip() ret3 =txt.strip() # print('ret1 : ' + '<' + ret1 + '>') print('ret2 : ' + '<' + ret2 + '>') print('ret3 : ' + '<' + ret3 + '>')
======실행결과======
ret1 : <양쪽에 공백이 있는 문자열입니다. > ret2 : < 양쪽에 공백이 있는 문자열입니다.> ret3 : <양쪽에 공백이 있는 문자열입니다.>
>>lstrip는 문자열의 왼쪽
rstrip는 문자열의 오른쪽
lstrip는 문자열의 양쪽의 공백을 제거한다.
- count()
======실행코드======txt = 'A lot of things occur each day, every day.' word_count1 = txt.count('o') print(word_count1)
======실행결과======
3
>>count는 문자열안의 특정 문자의 갯수를 세어 반환한다.
- find()
======실행코드======txt = 'A lot of things occur each day, every day.' offset1 = txt.find('e') offset2 = txt.find('day',30) print(offset1) print(offset2)
======실행결과======
22 38
>>find는 특정 문자의 첫 시작인덱스를 반환한다.
(두번째 인자는 찾기시작할 인덱스를 의미한다.)
- split(),join()
======실행코드======fb_url = 'https://www.facebook.com/elice.io' ret1 = fb_url.split('.') print(ret1) loglist = ['2017/09/01', '10:10:25', '프로그램이 종료'] log = '-'.join(loglist) print(log) print(fb_url) print(loglist)
======실행결과======
['https://www', 'facebook', 'com/elice', 'io'] 2017/09/01-10:10:25-프로그램이 종료 https://www.facebook.com/elice.io ['2017/09/01', '10:10:25', '프로그램이 종료']
>>split은 특정문자를 기준으로 문자열에서 리스트로 변환시키고
join은 특정 문자를 기준으로 리스트에서 문자열로 변환시킨다.(원본은 유지한다.)
3.리스트 메서드
- index()
======실행코드======solarsys = ['태양', '수성', '금성', '지구', '화성', '목성', '토성', '천왕석', '해왕성'] earth = '지구' pos1 = solarsys.index(earth) print('%s은(는) 태양계에서 %d번째에 위치하고 있습니다.' %(earth, pos1))
======실행결과======
지구은(는) 태양계에서 3번째에 위치하고 있습니다.
>> index는 데이터의 인덱스를 찾아 반환한다.
- append(),insert()
======실행코드======day = ['아침', '점심', '저녁'] day.append('야식') print(day) # solarsys = ['수성', '금성', '지구', '화성', '목성', '토성', '천왕성', '해왕성'] solarsys.insert(3,'달') print(solarsys)
======실행결과======
['아침', '점심', '저녁', '야식'] ['수성', '금성', '지구', '달', '화성', '목성', '토성', '천왕성', '해왕성']
>> append는 끝 리스트에 데이터를 추가하고
insert는 원하는 인덱스에 데이터를 삽입한다.(insert삽입시 데이터가 뒤로 밀린다.)
- del,remove()
======실행코드======solarsys = ['태양', '수성', '금성', '지구', '달', '화성', '목성', '토성', '천왕성', '해왕성'] del solarsys[0] print(solarsys) # solarsys.remove('달') print(solarsys)
======실행결과======
['수성', '금성', '지구', '달', '화성', '목성', '토성', '천왕성', '해왕성'] ['수성', '금성', '지구', '화성', '목성', '토성', '천왕성', '해왕성']
>> del은 특정 인덱스로 제거하고
remove는 특정 데이터로 검색하여 제거한다.(del solarsys[1:3]와 같이 슬라이싱을 통해 한번에 많은 데이터를 제거할 수 있다.)
- sort(),sorted()
======실행코드======lotto770 = [34, 1, 43, 9, 12, 39, 23] namelist = ['Marry', 'Sams', 'Aimy', 'Tom', 'Michael', 'Bob', 'Kelly'] # lotto770.sort() # ret = sorted(namelist,reverse=True) # print(lotto770) print(namelist) print(ret)
======실행결과======
[1, 9, 12, 23, 34, 39, 43] ['Marry', 'Sams', 'Aimy', 'Tom', 'Michael', 'Bob', 'Kelly'] ['Tom', 'Sams', 'Michael', 'Marry', 'Kelly', 'Bob', 'Aimy']
>> sort()는 리스트의 원본 자체를 정렬시키고
sorted는 복사하여 정렬후 반환한다.
- enumerate()
======실행코드======solarsys = ['태양', '수성', '금성', '지구', '화성', '목성', '토성', '천왕성', '해왕성'] ret = list(enumerate(solarsys)) print(ret)
======실행결과======
[(0, '태양'), (1, '수성'), (2, '금성'), (3, '지구'), (4, '화성'), (5, '목성'), (6, '토성'), (7, '천왕성'), (8, '해왕성')]
>> enumerate()는 시퀀스 자료형을 인자로 받아 각 요소를 인덱스와 함께 쌍으로 추출하여 반환한다.
- sum()
======실행코드======listdata1 = [2, 2, 1, 3, 8, 5, 7, 6, 3, 6, 2, 3, 9, 4, 4] listdata2 = list(range(103, 1226)) ret1 = sum(listdata1) ret2 =sum(listdata2) print(ret1) print(ret2)
======실행결과======
65 745672
>> sum()은 리스트형의 인자만 받을 수 있으며 리스트안의 모든 합을 반환한다.
(리스트안에 숫자형 데이터가 아닐 경우 에러가 난다.)
자료형별 메서드 분류
문자열 리스트 공통 isalpha()isdigit() index() max(),min() upper(),lower() append(),insert() len() lstrip(),rstrip(),strip() del,remove() count() find() sort() count(), split(),join() enumerate() sorted() sum()
Author And Source
이 문제에 관하여(파이썬 기초), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@tjwjdgus83/파이썬-기초저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)