Standard Library
https://docs.python.org/3/library
1. 내장 함수 및 내장 상수
2. 내장 타입(Built-in Types)
- 데이터 타입
- Exception
3. Text Processing Services
- string
- ** re - Regular expression
- 기타(difflib, unicodedata ...)
4. Numeric 및 mathematical modules
- math, cmath, random ...
5. Data Persistence/파일관련
- ** pickel(Python object serialization)
- marshal
- ** sqlite3
- 파일 포맷 관련: zlib, gzip 등 파일 압축 관련, csv, configparser 등
- 암호화 관련: hashlib 등
6. OS 서비스 관련
- 파일/디렉토리관련: pathlib, os.path, fileinput, glob 등
- argparse, getopt, logging
- platform, errno ...
- ctypes
- Concurrent Execution: threading, nultiprocessing 등
7. 네트워크
- IPC, network 관련: socket, ssl, asyncio, signal 등
- 네트워크 데이터 관련: email, json, mailbox
- html, XML 처리관련
- webbrowser, cgi, urllib, http 등
8. Python Runtime Services
- sys, sysconfig, Built-in objects
- __main__
9. 기타
- multimedia 서비스
- Inernationalization(gettext, locale)
- Program Frameworkds
-GUI
-IDLE
- 개발도구
- S/W packagiing과 Districution
- Custom Python Interpreters
- Importing Modules
- Python Language Services
sys module 관련 주요 함수
- argv: The command-line arguments, including the script name
import sys
args = sys.argv[1:]
args.reverse()
print(','.join(args))
# termianl에서
# MacBook-Pro:study-py3 jiyoung$ python3 test01.py a b c d
# d,c,b,a
- exit([arg]): Exits the current program, optionally with a given return value or error message
- modules:
- path
- platform
- stdin
- stdout
- stderr
os module 관련 주요 함수
- environ
- system(command)
- startfile(command)
- sep
- pathsep
- linesep
- urandom(n)
filinput module 관련 주요 함수
- Input([files[, inplace[, backup]])
import fileinput
for line in fileinput.input(inplace=1):
line = line.strip()
num = fileinput.lineno()
print('%-40s # %2i' % (line, num))
# terminal에서
# MacBook-Pro:study-py3 jiyoung$ python test01.py test01.py
# 실행하면, 오르른쪽에 line number을 찍은 것을 볼 수 있다.
import fileinput # 1
# 2
for line in fileinput.input(inplace=1): # 3
line = line.strip() # 4
num = fileinput.lineno() # 5
print('%-40s # %2i' % (line, num)) # 6
- filename()
- lineno()
- filelineno()
- isstdin()
- nextfile()
- close()
random module 주요함수
- random()
- getrandbits()
- uniform(a, b)
- randrange([start], stop, [step])
from random import randrange
num = input('How many dice?')
sides = input('How many sides per dice? ')
sum = 0
for i in range(int(num)):
sum += randrange(int(sides))+1
print('The result is:', sum)
# How many dice? 1
# How many sides per dice? 6
# The result is: 2
- choice(seq)
- shufle(seq[, random])
- sample(seq, n)
shelve module
- open(filename[, flag='c'[,protocol=None[,Writeback=False]]])
개념
1) "shelf" = a persistet, dictionary-like object
2) shelf에서의 value는 어떠한 object라도 상관없다
3) pickle도 다룰 수 있다(class, instances, recursive data types 등)
4) key만 일반 string이면 됨!
pickle module
- dump
- load
- dumps
- loads
개념 (serialization, marshalling, flattening)
1) serializing , de-serializing object structure.
2) "Pickling": object가 byte stream으로
3) "unpickling": byte stream을 object로
movieList = ['Ants', 'Star Wars', 'Inception']
outFile = open('pickle.txt', 'wb') # writebinary
import pickle
pickle.dump(movieList, outFile)
outFile.close()
inFile = open('pickle.txt', 'rb')
newList = pickle.load(inFile)
print(newList) # ['Ants', 'Star Wars', 'Inception']
inFile.close()
pickle을 이용하면, 어떤 것이든 저장하고 불러오기가능 *^^*
3rd party library(Pypi)
https://pypi.python.org/pypi
'Data > python·알고리즘' 카테고리의 다른 글
[큐와 스택] queue와 stack (0) | 2018.09.24 |
---|---|
[python] jupyter notebook 코드를 tistory에 올리는 법. (0) | 2018.09.16 |
[python 기초] Exception 처리 (0) | 2018.06.29 |
[python 기초] OOP - class와 Object (0) | 2018.06.29 |
[python 기초] python의 file mode (0) | 2018.06.29 |
댓글