반응형
반응형

어떻게 보면
제가 살아온 길이 참 단순합니다.
남들 다 꺼리는 현장만 죽어라 판 거니까.
그래서 그전부터 저를 아는 사람들은 제가 아직도
어느 공장 사장인줄 알아요. 공장 사장 맞습니다.
공장 사장하다가 공장이 여러 개로 늘면서
사장들한테 자리 내주고
회장이 된 거니까.


- 박도봉, 김종록의《CEO박도봉의 현장 인문학》중에서 -


* 현장에 답이 있습니다.
신문 방송기자도 현장을 지키는 사람이
특종을 낚아올릴 수 있습니다. 현장을 지키고
현장을 죽어라 파고들어야 길이 보입니다.
직접 경험의 세계가 깊어지고
성공의 문도 열립니다.

반응형

'생활의 발견 > 아침편지' 카테고리의 다른 글

사람들이 너무 좋아졌다  (0) 2016.08.18
아버지의 노을  (0) 2016.08.17
무아경의 순례길  (0) 2016.08.11
느끼면 움직여야 한다  (0) 2016.08.10
그때마다 조금씩 가벼워졌다  (0) 2016.08.09
반응형

Mr. Big - Daddy, Brother, Lover, Little Boy [LIVE]


.

Mr. Big - LIVE 2009 in Japan "BACK TO BUDOKAN"


반응형
반응형

문자열을 반복하여 붙이는 3가지 코딩 방법 및 수행 시간 비교


[코드 1]
import time
start_time = time.time()
s = ''
for k in range(1000000):
    s += 'python'
end_time = time.time()
print end_time - start_time

출력: 0.243875980377

[코드 2]
start_time = time.time()
t = []
for k in range(1000000):
    t.append('python')
s = ''.join(t)
end_time = time.time()
print end_time - start_time

출력: 0.161774158478

[코드 3]
start_time = time.time()
s = 'python' * 1000000
end_time = time.time()
print end_time - start_time

출력: 0.000773191452026

위 결과로 알 수 있듯이 단순하게 문자열을 반복하여 붙이는 코딩 방법은 3번째 방식의 효율이 가장 좋습니다.

 

 

파이썬 온라인 코딩 학습 사이트 추천

 

https://www.codecademy.com/ko/tracks/python-ko 


온라인 코딩 학습 사이트로 유명한 codecademy의 Python 학습 컨텐츠입니다. 

한글로 친절하게 번역이 잘 되어 있으며, 

각 단계별로 실제 코딩을 하여야 다음 단계로 넘어갈 수 있기 때문에 

파이썬을 학습하기에 아주 좋은 사이트입니다.

 

 

파이썬으로 개발된 유명한 S/W에는 어떤 것이 있을까요?
아래 링크에서 확인할 수 있습니다.


위 링크의 내용에 나와 있듯이 Youtube도 Python으로 개발되었습니다.

 

 

 

반응형
반응형

윈도우즈에 파이썬 개발 환경 구축 참고 자료 


Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기

 


http://www.slideshare.net/JoongiKim/python-korea-20140628-windows-python

 


처음에 윈도우즈에서 개발환경을 구축할 때 도움이 될 만한 자료입니다.

 

[turtle 모듈 활용하기]


1) 참고자료


2) 예제

import turtle

t = turtle.Turtle()
t.pensize(3)             # 펜 사이즈를 3으로 설정한다.
t.penup()                # 펜을 종이로 부터 들어올린다.
t.goto(-200, -50)        # 해당 좌표로 이동한다.
t.pendown()              # 펜을 종이에 놓는다.
t.circle(40, steps=3)    # 반지름이 40인 원을 3 step으로만 그린다. ==> 삼각형이 그려짐

t.penup()
t.goto(-100, -50)
t.pendown()
t.circle(40, steps=4)

t.penup()
t.goto(0, -50)
t.pendown()
t.circle(40, steps=5)

t.penup()
t.goto(100, -50)
t.pendown()
t.circle(40, steps=6)

t.penup()
t.goto(200, -50)
t.pendown()


t.circle(40, steps=40)
반응형
반응형

 


함수의 정의와 호출


함수: 여러 개의 statement를 하나로 묶은 단위
* 함수는 반복적 수행이 가능하며, 코드를 논리적으로 이해하는데 도움을 줌. 또한 코드의 일정
 부분을 별도의 논리적 개념으로 독립화 가능


간단한 함수의 정의 → def: 함수 정의 시 사용하는 키워드


함수 객체와 함수 호출
* 함수 이름 자체는 함수 객체의 레퍼런스를 지님
* 함수 이름에 저장된 레퍼런스를 다른 변수에 할당하여 그 변수를 이용한 함수 호출 가능
* 함수 몸체에는 최소한 한 개 이상의 statement가 존재해야 함 (없으면 pass 사용)


함수 인수값 전달 방법
* 기본: 값에 의한 호출(call-by-value) → 실제로는 참조에 의한 호출(call-by-reference)
* 함수 인자에 변경불가능 객체인 숫자값, 문자열, 튜플을 전달하면 의미 없음
* 함수 인자에 변경 가능한 객체인 리스트와 사전을 전달하면 올바른 전달법 및 활용법


- 반환문 : 인수 없이 return문 사용하면 None 객체 전달


- 함수 인자에 대한 동적인 자료형 결정 : 함수 인자는 함수가 호출되는 순간 해당 인자에 전달되는
 객체에 따라 타입 결정

 

함수 인수 처리


기본 인수 값 : 함수를 호출할 때 인수를 넘겨주지 않아도 인수가 기본적으로 가지는 값
* incr(a, step=1)에서 step=1과 같은 형태를 가짐
* 함수 정의를 할 때 일반적인 인수 앞에 기본 인수 값 올 수 없으나 여러 개는 정의 가능


키워드 인수 : 인수 값 전달 시 인수 이름과 함께 값을 전달하는 방식
* 함수 호출 시 키워드 인수는 마지막에 위치해야 함


가변 인수 리스트 : 함수 정의 시 일반적인 인수 선언 뒤에 *var 형식의 인수로 가변 인수 선언
* var 에는 함수 호출 시 넣어주는 인수 값들 중 일반 인수에 할당되는 값을 제외한 나머지 값들을
 지닌 튜플 객체가 할당됨
* C 언어의 printf문과 유사한 형태의 printf 정의 됨


튜플 인수와 사전 인수로 함수 호출하기
* 함수 호출 시 * 사용하고 뒤에 튜플을 넣으면 튜플 전체 호출 가능
* 함수 호출 시 ** 사용하고 뒤에 사전을 넣으면 사전 전체 호출 가능

반응형
반응형

파일 다루기


파일 목록 얻기
* os.listdir(‘경로’) → 디렉토리 안에 들어 있는 각 파일 목록 반환


파일 종류 알아보기
* os.path.isfile(fpath) → 순수 파일이면 true
* os.path.isdir(fpath) → 디렉토리면 true
* os.path.islink(fpath) → 심볼릭링크면 true


파일의 허가권
* os.access(filepath, mode) → 파일의 허가권 알아보기
   / mode에 os.F_OK이면 파일 자체가 존재하는 것을 테스트
   / mode에 os.R_OK이면 읽기 권한이 있는 것을 테스트
   / mode에 os.W_OK이면 쓰기 권한이 있는 것을 테스트
   / mode에 os.X_OK이면 실행 권한이 있는 것(또는 디렉토리인지)을 테스트
* os. access(filepath, mode) → 파일의 허가권 변경하기

 

파일 다루기


파일 조작하기
* os.rename(old_filepath, new_filepath) : 파일 이름 변경하기
* os.rename(old_filepath, folder name/new_filepath) : 파일 이동하기
* shutil.copyfile(src_filepath, dest_filepath) : 파일 복사하기


파일 이름 다루기
* os.path.abspath(상대경로) : 상대 경로를 절대 경로로 변환하기
* os.path.exists(filename) : 주어진 경로의 파일이 존재하는지 확인
* os.curdir : 현재 디렉토리, os.pardir : 부모 디렉토리를 가리키는 이름 얻기
* os.sep : 디렉토리 분리 문자 얻기


경로명 분리하기
* os.path.basename(f) : f 경로에서 파일명만 추출
* os.path.dirname(f) : f 경로에서 디렉토리 경로 추출
* os.path.split(f) : 경로명과 파일명을 한 번에 분리
* os.path.splitext(f) : f 경로의 확장자 분리

 

표준 출력 방향 전환


디렉토리에 관련된 일반 작업
* os.getcwd() : 현재 작업 디렉토리 알아보기
* os.chdir() : 작업 디렉토리 변경하기
* os.mkdir() : 디렉토리 만들기
* os.rmdir() : 디렉토리에 내용이 없을 시 삭제
* os.removedirs(filepath) : 맨 오른쪽부터 단계별 디렉토리 삭제
* shutil.rmtree() : 하위 디렉토리까지 모두 한 번에 삭제
* shutil.copytree(src_filepath, dest_filepath) : 하위 디렉토리와 파일 등을 지니고 있는
 디렉토리 복사


디렉토리(트리) 탐색하기
* os.walk(filepath) : filepath부터 시작하여 재귀적으로 모든 하위 디렉토리 탐색
 탐색 시 발견하는 모든 파일에 대해 다음 튜플을 리턴 (dirpath, dirnames, filenames)

반응형

+ Recent posts