반응형

IT/Programing 20

[Python] 2.x버전에서 3.x버전으로 포팅 시 주의점

파이썬을 시작하고 나서 2.x 에서 짠 코드들을 3.x 에서 쓰게 되는 경우가 종종 있었다. 사실 요즘은 대부분 웬만해선 3.x로 시작하겠지만, 아직 2.x에서의 쓸만한 코드들이나 모듈들이 있으므로, 개인적으로 2.x에서 3.x로 포팅할 때 이슈있었던 것들 정리해둔다. 1. Exception 처리의 syntax error 예외처리에서의 문법이 다르다. 정말 이유를 모르겠는데 syntax error 계속 어후.... - 2.x except Exception, e: - 3.x except Exception as e: 2. byte array is not str 어느 코드였는지 자세히 기억은 안나지만 바이트 스트림 문자열 상수(리터럴)라는 것이 3.x에 생겼다. 그로인해 함수에 인자나 결과값이 기존 문자열이 ..

IT/Programing 2019.07.01

^M 정체 및 제거 방법

다른 운영체제 간에 파일을 전송하여 확인할 때 각 행의 끝에 ^M가 보이는 경우가 있다 예를 들어 윈도우에서 리눅스로 파일을 옮긴 경우 ^M가 보이는데 이 때이 ^M을 어떻게든 처리해야한다 우선 생기는 이유는 각 운영체제간의 개행문자 방식이 다르기 때문으로, 파일이 전송될 때 각 OS의 텍스트 처리방법으로 변환이 되지 않으면 개행문자 차이로 인해 깨져보이는 것 윈도우는 CRLF, 리눅스에서는 LF만 개행문자로 사용한다 (CR, LF 모르면 더보기 클릭) 더보기 CR(캐리지 리턴): 커서의 위치를 해당 행 맨 앞으로 LF(라인 피드): 현재 위치에서 바로 아래 행으로 이동 리눅스에서 파일이 해당 문제에 있을 때 해결책으로 두 가지가 있다 1. dos2unix 명령어 가장 간편할 수 있다 아래 명령어를 수행..

IT/Programing 2019.04.26

[Bash Shell Script] 함수 쓰기

Bash Shell Script 에서 함수 사용하기 1. 함수 선언 및 사용 기본적인 함수 사용법은 아래와 같다. #!/bin/bash function 함수명() { 함수 내용 } 함수명 function으로 시작되어 }까지 함수를 선언하고 실제 함수를 사용할 때는 함수명만 쓰면된다. ( ()가 필요없음 ) 실제 사용할 때 function을 쓰지 않고 함수명만 써도 무방하다. 2. 함수 인자 전달 #!/bin/bash test_func() { func_a=$1 func_b=$2 echo "$func_a $func_b" } test_func 인자1 인자2 따로 함수 선언에 매개변수를 표시하지 않고 함수 안에서 $1,$2 등으로 사용할 수 있다. 다른 언어처럼 함수안에 변수는 지역변수로 치부된다. 3. 함수 ..

IT/Programing 2018.08.29

[Python] 개행문자 삭제

이것저것 연습하다 보면 개행문자를 삭제해야하는 경우가 종종 생기게 된다. 그때마다 찾는게 귀찮아서 아예 적당히 정리하게 되었다. 애초에 이 글을 보는 분은 개행문자가 뭔지 알고 들어오신 분이 많겠지만 혹시 모르니 ※ 개행문자란? 더보기 영어로 new line character로, 개행문자의 다음 문자부터는 다음 행으로 표시 위치를 바꾸는 목적으로 쓰인다. 현재 윈도우(Windows)환경의 텍스트에서는 '\n' 리눅스(Linux)환경에서의 텍스트는 '\r\n' 으로 되어있다. 사실 \r은 맨 앞줄로 가기, \n이 다음 행으로 가기로 의미가 다르지만, 개행문자라고 통칭해서 표현하는 것 같다. 그래서 파이썬에서 개행문자를 없애는 방법으로는 두 가지 정도를 찾아서 쓰고있다. 1. rstrip() 2. split..

IT/Programing 2018.08.08

[Python] Python 2.4에서 2.7 설치

Python 2.4 -> 2.7 설치하는 과정 정리 1. 설치에 필요한 것들을 설치 (설치 목록 각각의 자세한 내용은 모르겠으나, 기본적으로 설치되어 있는 것도 다수 있는 것으로 보임 ex. wget) # yum -y install wget make gcc xz openssl-devel bzip2-devel ncurses-devel gdbm-devel xz-devel sqlite-devel readline-devel tk-devel 2. python2.7 압축파일 다운로드 및 압축해제 아래 URL(파이썬 홈페이지)로가서 필요 버전의 압축파일 다운로드 https://www.python.org/downloads/ # tar -xvzf Python-2.7.15.tgz 3. configure # cd Pytho..

IT/Programing 2018.05.30

[Python] twill 모듈 설치 및 사용법 소개

twill 모듈은 Web에서의 핸들링을 위해 찾은 모듈 Web상의 일종의 매크로 동작을 위해 사용하였다 1. 설치 1) 아래 URL로 접속하여 twill을 다운로드 한다 http://twill.idyll.org/ 다운로드 파일: twill-0.9.tar.gz 2) 다운로드한 파일 압축을 풀고 내부에서 setup.py를 install한다 install방법은 아래 명령어를 사용 # python setup.py install 2. 사용법 - 기본적인 API에 대한 설명은 아래 주소로 들어가면 있다 http://twill.idyll.org/python-api.html 1) python에서 twill 모듈 사용 아래와 같이 스크립트에 twill.commands를 import해주면 객체없이 명령어만으로 사용 가능하..

IT/Programing 2018.03.23

vi(vim) 편집기

vi(vim) 편집기 사용법 정리 개인적으로 자주 또는 필요할 때가 간혹 있는 사용법을 정리함 - vi 시작vi [file명] (file이 없으면 새로 생성) - 입력모드i (소문자 i, 글자 앞에서 시작)I (대문자 i, 행 맨 앞에서 시작)Esc (입력모드 나가기) - 지우기 (입력모드가 아닌 상태에서 적용된다)del 또는 x (한글자 지우기)[숫자]x ([숫자]만큼 글자 지우기) ex. 5x : 커서로부터 다섯글자 지워짐dd (한 줄 지우기) - 실행취소, 되돌리기u (실행취소)Ctrl + r (되돌리기(실행취소를 취소)) - vi 끝 (모두 큰따옴표(:)를 입력후 명령어를 입력한다):w (저장):w [file명] (다른이름으로 저장):q! (강제종료, 저장하지않고 나가기):wq (저장하고 나가기)..

IT/Programing 2018.01.20

[Python] 리눅스 Python3 설치

Centos 5.11에 Python3 설치하는 과정 정리 (검색해보니 Centos 7.x에서는 패키지로 설치가 가능한 것으로 보임) 1. 설치에 필요한 것들을 설치 (설치 목록 각각의 자세한 내용은 모르겠으나, 기본적으로 설치되어 있는 것도 다수 있는 것으로 보임 ex. wget) # yum -y install wget make gcc xz openssl-devel bzip2-devel ncurses-devel gdbm-devel xz-devel sqlite-devel readline-devel tk-devel 2. python3 압축파일 다운로드 및 압축해제 # wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz # tar -xvzf Pytho..

IT/Programing 2017.09.25

[운영체제] 프로그램의 구조

학부때 배운 내용 복습겸 정리 시작 운영체제부터 - 프로그램의 구조 프로그램의 구조를 그려보면 아래와 같다 프로세스제어블록이 0번지부터 시작하고, 스택은 제일 마지막 번지부터 거꾸로 올라가면서 주소를 차지한다 실제 코드와 비교해서 보면 더 알기 쉽다아래와 같은 코드가 있다고 치자---------------------------------------------------------------------------- #include #include int data1 = 1, data2 = 2, data3 = 3 int main(void){int hi, hello, annyung;int *p1; hi = data1 + data2;hello = data2 + data3;annyung = func1(hi); p1..

IT/Programing 2017.07.20
728x90
반응형