반응형

오늘은 리눅스 Ubuntu에 Hadoop을 설치해보도록 하겠습니다.

 

귀여운 코끼리 로고를 가지고 있는 하둡입니다.

 

 

하둡은 분산처리를 도와주는 플랫폼이라고 생각하시면 됩니다.

빅데이터 환경을 구축하기 위해서 필수적인 시스템입니다.

 

빅데이터 시대가 도래했다!!

요즘 5G 시대가 오면서, 점점 오고가는 데이터들이 많아지고 있습니다.

데이터를 송수신하는데 걸리는 지연시간도 점점 단축되고,

그만큼 다양한 데이터들이 발생하고 어떤 시스템에서는 하루에 몇십억개의 로그들이 찍히고 있는 곳도 있다고 합니다.

이러한 빅(big)데이터를 빠르게 처리하고 저장하기 위해서 빅데이터 프로그래밍이라는 새로운 분야가 개설되었습니다.

 

우리 집에 있는 컴퓨터로는 빅데이터 프로그래밍을 할 수 있을까요?

절대적으로 못합니다. 하루에 몇억개의 로그를 실시간으로 받아주고, 처리해주다보면,

하루도 채 가지 못해서, 컴퓨터가 병들고, 터질수도...ㅜㅜ

 

하둡이란?

여러개의 저성능 컴퓨터를 이어붙여서, 각 컴퓨터에 일을 조금씩 부여해주어,

결과적으로는 빅데이터를 처리할 수 있게 만들어주는 시스템.

 

분산저장과 분산 처리를 지원해줍니다.

분산저장: HDFS(Hadoop Distributed File System의 약자)

분산처리: Hadoop MapReduce(맵리듀스라고 읽습니다.)

 

## 중요 ##

우분투에 하둡 설치하기

 

하둡을 설치하기 위한 환경 구축

 

먼저 우분투의 설치 시스템인 apt-get 을 업데이트 해줍니다.

>> sudo apt-get update

 

그리고 자바를 설치해주어야겠죠?

아래의 명령어를 실행합니다.

>> sudo add-apt-repository ppa:webupd8team/java

 

도중에 ENTER 키 한번 눌러주시면 됩니다.

 

그리고 apt-get 시스템 한번 더 update 해주세요.

>> sudo apt-get update

 

java 8버전을 설치해주어하는데, 

>> sudo apt-get install oracle-java8-installer

의 명령어를 입력하면,

그런거는 없다고 말한다.

 

 

왜그런지 찾아보니, JAVA 라이선스 정책이 변경되어서, 수동으로 설치를 해주어야 한다고 한다.

(자동: sudo apt-get install oracle-java8-installer 명령어로 설치하는거를 의미)

 

 

출처: https://m.blog.naver.com/PostView.nhn?blogId=love_tolty&logNo=221585458347&proxyReferer=https:%2F%2Fwww.google.com%2F

 

(JAVA 라이선스 정책변경에 따른) Ubuntu에 JAVA v1.8 설치하기

​0. 들어가기 전에... | 간단한 포스팅 소개 세계 최대 데이터베이스 관련 SW 개발사인 Oracle社는 201...

blog.naver.com

 

 

그래서 아래와 같이 설치해준다.

자바 버전을 관리하는 github 사이트에 들어가서 수동으로 설치진행해준다.

https://github.com/frekele/oracle-java/releases/download/8u212-b10/jdk-8u212-linux-x64.tar.gz

불러오는 중입니다...

 

여기서,

1. jdk-8u212-linux-x64.tar.gz 버전에서 마우스 우클릭

2. 주소 링크 복사 클릭

3. 터미널에서 wget + 복사한 주소 붙여넣기(wget 명령어는 링크에 들어가서 해당 파일을 다운로드 하는 리눅스 명령어이다.)

4. Enter 로 설치진행.

 

5. 잘되고 있쥬?

6. 다운로드 잘 했는지 확인

>> ls

명령어 실행하면 jdk-8u212-linux-x64.tar.gz 가 잘 받아진 것을 볼 수 있다.

(ls 명령어는 현재 위치에 있는 파일들의 list를 보여준다. (ls ==> list를 의미하지 않을까?)

7. 압축을 푼다.

>> tar -xvzf jdk-8u212-linux-x64.tar.gz

명령어를 실행(tar 라는 명령어는 tar 로 압축되어 있는 압축파일을 압축하거나, 풀때 사용)

 

8. 잘 풀렸는지 확인

>> ls

명령어 입력하니, 잘 풀렸다. jdk1.8.9_212 라는 파일이 생김.

9. 해당 파일을 /usr/local 위치로 옮기

>> sudo mv jdk1.8.0_212 /usr/local

10. 잘 옮겨졌다 확인해보니, 잘 옮겨졌다.

>> ls /usr/local

 

11. 옮겨진 자바를 우분투가 인식하기 위해 환경설정 파일에 등록해준다.

>> sudo vi /etc/profile

위 화면 뜨면, 맨 아래줄에 다음과 같이 추가해준다.

(추가 방법:

1. "esc" 누르고 맨 아래줄에 가서 "a" 키 누르고 입력 활성화시킴

2. 파일 수정하고

3. "esc" 누르고 입력 비활성화시킴

4. ":" 누르고 

5. "qw" 누르고 "엔터")

 

 

 

JAVA_HOME=/usr/local/jdk1.8.0_212

CLASSPATH=$JAVA_HOME/lib/tools.jar

PATH=$PATH:$JAVA_HOME/bin

export JAVA_HOME CLASSPATH PATH

 

맨 아래줄에 추가된 것 보이시죵?

 

 

 

JAVA_HOME 이라는 것을 추가해서 앞으로는 우분투가 JAVA를 알아볼 수 있도록 profile에 적어준 것이다.

 

12. profile 수정하고 나면 리눅스 reboot 전까지는 바로는 적용이 안되서 source 명령어 수행하여 바로 적용시킴

source 명령어 후에 설정한 JAVA_HOME이 잘 뜬다.

 

13. java -version 확인해서 잘 나오면 성공적으로 우분투에 자바 설치된 것입니다.

>> java -version

 

 

 

드디어 자바 설치 완료!!

 

이제 다시 apt-get 시스템 업그레이드 해준다./

 

>> sudo apt-get upgrade

 

## 우분투 그룹 만들어주고 키 설정 ##

 

먼저 hadoop 이라는 그룹을 만든다.

>> sudo addgroup hadoop

 

그리고 해당 그룹에 사용자를 추가한다.

>> sudo adduser --ingroup hadoop hduser

 

사용자에 대한 비밀번호를 2번 입력받고,

관련 정보들은 입력해준다.(연습용이라면 그냥 enter 치고 넘어간다.)

 

그리고 sudoers 파일에 사용자를 등록해준다.

>> sudo vi /etc/sudoers

 

다음의 파일은 중요한 파일이여서 readonly(즉 읽는것만 가능하다고 나온다.)

이것을 해결하기 위해

":" + "q!" (강제종료로 나가서)

 

아래 링크를 통해 

>> sudo bash

>> chattr -i /etc/sudoers

>> chmod u+w /etc/sudoers

입력하고

 

다시 실행하면 수정가능하다.

>> vi /etc/sudoers

 

https://datacodingschool.tistory.com/25

 

os, readonly 파일 수정방법(feat, sudoers 수정)

아래의 코드를 명령창에 실행하면 된다. >> sudo bash >> chattr -i /etc/sudoers >> chmod u+w /etc/sudoers 그 후 수정하면 된다. ex) >> vi /etc/sudoers

datacodingschool.tistory.com

수정하였다.

 

openssl server 를 설치한다.

>> apt-get install openssh-server

 

키를 생성해서, 앞으로 들어갈때는 비밀번호 물어보지 않고 들어가게 설정해줌

>> sudo su hduser -> cd -> ssh-keygen -t rsa -P "" -> Enter

>> cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

 

sysctl.conf 파일을 수정한다.

>> sudo vi /etc/sysctl.conf

 

맨 아래쪽에 다음 내용 추가

# disable ipv6

l.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable)ipv6 = 1

 

그 다음 ubuntu 리부트 해준다.

>> sudo reboot

 

1분 뒤? 다시 켜준다.

 

## 중요 ##

## 이제 진짜 하둡 설치 ##

 

1. 노란색 다운로드 들어감

2. 아래 mirror site 클릭

 

3. https://downloads.apache.org/hadoop/common 클릭하여 들어감

 

 

4. hadoop-3점대 버전으로 설치해보겠다.

5. hadoop-3.1.3.tar.gz 파일에서 우클릭하고 링크 주소 복사를 눌러, 주소를 복사한다.

 

6. wget + 복사한 주소 를 통해 주소가 가리키는 파일을 가져온다.

>> wget 주소

 

7. 다운로드 받은 hadoop-3.1.3.tar.gz 파일 압축 풀기

>> tar -zxf hadoop-3.1.3.tar.gz

 

8. 압축 푼 파일을 위치를 옮겨준다.

>> sudo mv 'hadoop-3.1.3' /usr/local/hadoop

 

9. 아래 명령어도 실행해준다.

>> sudo chown hduser:hadoop -R /usr/local/hadoop

>> sudo mkdir -p /usr/local/hadoop_tmp/hdfs/namenode

>> sudo mkdir -p /usr/local/hadoop_tmp/hdfs/datanode

>> sudo chown hduser:hadoop -R /usr/local/hadoop_tmp/

 

10. 이제 환경설정 파일을 수정해준다.

>> sudo vi .bashrc

 

11. .bashrc 파일을 열고 맨 아래에 다음을 추가해준다.

출처: https://coding-factory.tistory.com/60

12. hadoop-env.sh 편집해주기

>> cd /usr/local/hadoop/etc/hadoop

>> sudo vi hadoop-env.sh /비밀번호

 

13. 하둡 관련 파일 수정해준다.

>> sudo vi core-site.xml

 

>> sudo vi hdfs-site.xml

 

>> sudo vi yarn-site.xml

 

template 파일이라고 하둡에서 입문자들을 위해 미리 작성해놓은 구조가 있는데,

아래의 코드가 지금 설치하는 대로 하면 3점대에서는 존재하지 않아서 에러가 날 수도 있다.(그냥 무시)

>> cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml

 

 

>> sudo vi mapred-site.xml

>> cd

>> source ~/.bashrc

>> cd /usr/local/hadoop_tmp/hdfs

 

 

 

## 드디어 하둡 실행 ## (거의 다옴)

 

각 노드들 켜주는 명령어이다.

>> hadoop namenode -format

>> start-dfs.sh 

>> start-yarn.sh

 

여기까지 하둡 관련 노드들을 실행했고,

잘 실행됬는지 확인하는 명령어를 입력해본다.

 

>> jps

아래처럼 나오면 성공!!

참고한 블로그: https://coding-factory.tistory.com/60

 

[Linux] 우분투에서 하둡(hadoop) 설치하기

리눅스 우분투상에서 하둡(hadoop)을 설치해보도록 하겠습니다. 하둡(hadoop)은 빅데이터 환경을 구축하기 위해서 필요한 필수 프로그램입니다. 이번 포스팅에서는 우분투에서 하둡의 설치방법에 대해서 알아보도..

coding-factory.tistory.com

 

반응형
반응형

먼저 내가 사용하는 jupyter 에 어떤 커널들을 사용할 수 있는지 확인한다.

>> jupyter kernelspec list

 

나는 위의 그림을 보니

python3, python2 를 사용할 수 있다.

 

 

이제 루비를 추가해보겠다.

 

mac os 의 경우 homebrew를 통해서 zeromq를 설치해준다.

>> brew install zeromq --universal

그러면 -- 다음이 옵션을 넣어주는 건데,

--universal 옵션이라는 것은 없다고 나온다.

아마 예전엔 있었는데 지금은 빠졌나보다.

 

universal 이라는 옵션 없음

 

 

pyenv를 설치해준다.

>> brew install pyenv

 

그 후에 아래 3줄을 터미널에 입력해주어 환경변수를 세팅해준다.

 

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

 

나는 아래의 명령어도 필요할 수도 있다고 추가해달라고 콘솔창에 나와있었다.

echo 'export PATH="/usr/local/opt/openssl@1.1/bin:$PATH"' >> ~/.bash_profile

export LDFLAGS="-L/usr/local/opt/openssl@1.1/lib"

export CPPFLAGS="-I/usr/local/opt/openssl@1.1/include"

export PKG_CONFIG_PATH="/usr/local/opt/openssl@1.1/lib/pkgconfig"

 

 

아래 명령어를 입력하여 파이썬 3.4 버전을 설치한다. (기존에 파이썬 3점대 버전이 있으면 안하셔도 무방할 듯 싶습니다)

 

>> pyenv install 3.4.3

>> pyenv global 3.4.3

jsonschema 설치(파이썬3 부터는 jsonschema 라는 것도 필요하다고 합니다.) -- 파이썬 이미 있으면 안해도 될 듯 합니다.

>> pip install jinja2 tornado pyzmq jsonschema  

>> pip install ipython

 

 

## 중요 ##

 

이제부터 iruby를 설치해줍니다.

iruby 란 주피터 노트북에서 사용할 수 있는 ruby 언어를 의미합니다.

ex)

기존의 파이썬: python

주피터 상의 파이썬: ipython 이라고 부르듯.

 

iruby는 gem 이라는 시스템으로 설치가 가능합니다.

 

먼저 specific_install 이라는 패키지를 설치하고,

>> sudo gem insrtall specific_install

 

specific_install 라는 패키지를 사용해서 github에 올려져있는 iruby를 설치받습니다.

>> sudo gem specific_install -l https://github.com/SciRuby/iruby -b master

여기서 sudo 란 관리자 권한으로 설치한다는 것을 의미합니다.

자! 이제 터미널에

>> iruby --version

이라고 입력하시면, 버전정보가 나온다면, 정상적으로 설치가 되었습니다.

 

이제 설치된 iruby를 jupyter notebook 에서 사용하기 위해 커널을 등록해보겠습니다.

커널은 코딩을 할 수 있는 하나의 공간이라고 생각하시면 무방합니다.

jupyter notebook이라는 스케치북에 iruby라는 언어를 이해할 수 있는 공간이 존재해야 iruby 코드를 작성하고 

한줄 한줄 실행할 수 있는 것이지요

 

iruby 커널 등록

>> iruby register

 

드디어 등록이 완료되었습니다!! 오예~~~

 

 

이제 제대로 등록이 되었는지 커널들의 리스트를 출력해볼까요??\

>> jupyter kernelspec list

 

 

ruby라 정상적으로 나오네요.

이제 jupyter notebook을 실행해서, ruby코드를 작성하고 컴파일하실 수 있습니다.

 

>> jupyter notebook

 

 

 

감사합니다~~~ㅎㅎㅎ

 

 

반응형
반응형

기존의 아나콘다 설치 후 파이썬을 실행하시면

 

아래와 같이 Python3 점대 버전만 사용가능하실겁니다.

 

 

주피터 환경에서 Python 2점대 버전도 설치를 해주기 위해,

 

기존의 anaconda 환경으로 파이썬을 설치하였다면,

 

Anaconda Prompt에 들어가셔서 아래의 명령어대로 수행하시면 

 

주피터 환경에서 Python 다중 커널을 사용하실 수 있습니다.(mac 환경에서는 Anaconda Prompt 대신 그냥 terminal 을 키셔도 무방합니다. ^^ )

 

먼저 아래 명령어를 사용하여

jupyter kernelspec에서 어떤 커널들이 가능한지(어떤 언어로 작업을 할 수 있는지) 확인을 해줍니다.

>> jupyter kernelspec list

 

 

먼저 anaconda 시스템을 업데이트를 해줍니다.

내 pc에 깔려있는 anaconda를 최신버전으로 만드는 작업.

>> conda update conda

 

그 다음 파이썬 커널을 만들어 주는 작업입니다.

파이썬 2.7 버전을 설치해주는 작업입니다.

>> conda create -n py27 python=2.7 anaconda

 

커널 설치가 완료되었으면,

 

아래 명령어를 입력하여

파이썬 2.7 버전을 활성화시켜줍니다.

>> conda activate py27

 

다음 라인의 맨 앞에 (py27)이라고 나오게 되었죠??

 

파이썬 2.7 버전이 활성화 된 것입니다.

 

아래는 활성화와 비활성화에 대한 사용명령어 코드입니다.

 

 

비활성화를 하시려면,

>> conda deactivate

라고 입력하시면 되겠죠??

 

conda deactivate 라고 입력하신 후에

 

다시 jupyter notebook 을 실행시키시면,

 

아까는 보이지 않았던 python2 가 생성된 것을 보실 수 있습니다.

 

 

이로써 jupyter notebook 에서도 python2 를 사용하실 수 있게 됬네요~~ㅎㅎ

 

감사합니다.

 

 

 

 

반응형

'IT' 카테고리의 다른 글

Ubuntu에 Hadoop 설치  (1) 2020.04.21
jupyter notebook 에서 루비 커널 추가하기  (0) 2020.04.21
MacBook 파이썬 설치하기  (0) 2020.04.21
Python2 vs Python3  (0) 2020.04.21
os, readonly 파일 수정방법(feat, sudoers 수정)  (0) 2020.04.20
반응형

1. 맥북에는 이미 파이썬이 설치되어 있습니다.

 

command + space 키를 눌러 검색창을 활성화시킨 뒤,

terminal이나 iterm을 켜서

 

>> python -V

 

명령어를 실행시킵니다.

 

아마 파이썬 2점대 버전이 설치되어 있지 않을가 싶네요.

출력값: Python 2.x.x

 

그러나 2점대와 3점대는 코드상에 차이가 있기 때문에 파이썬3를 설치해본다.

Python2 vs Python3 관련 포스팅 참고:  https://datacodingschool.tistory.com/26

 

Python2 vs Python3

Python2점대와 3점대가 차이가 생기는 이유: 두 버전간의 backward compatibility를 지원하지 않는 부분이 많다는 것이다. 1. xrange vs range 파이썬 2에서는 xrange를 지원하지만, 파이썬 3에서는 xrange는 아니..

datacodingschool.tistory.com

 

 

파이썬 3점대 설치

 

1. 공홈(공식홈페이지)에 들어가서 설치

https://www.python.org/downloads/

 

Download Python

The official home of the Python Programming Language

www.python.org

파이썬 홈페이지에서 알아서 추천해주기 때문에 노란색 버튼(최신버전) 클릭!

 

설치 후 다운받은 pkg 파일을 실행

 

 

"계속" 버튼 클릭

 

 

"동의" 버튼 클릭

 

 

mac 계정 암호 입력하며 설치 진행

 

 

 

설치 진행 중

 

설치 완료!!

 

 

 

이제 Command + Space 를 눌러서  "Terminal" 를 입력하고,

>> Python -V

명령어를 입력하면, 그대로 2점대 버전이 나오게 된다.

 

 

 

### 이제 중요 ###

 

터미널 환경에서 환경 변수라는 것을 설정해주어야 한다. (몬가 개발자 같지?)

 

터미널에서 윈도우의 워드나, 한글처럼 파일을 수정해줄 수 있는 에디터가 존재!!

 

그 이름은 바로!!! >> vim 이다.

 

vi 라는 명령어로 파일을 수정할 수 있다.

 

 

>> vi ~/.bash_profile

 

입력한다.

 

1. vi : vim 에디터로 bash_profile을 수정할 거니까, 열어달라는 명령어이다.

2. .bash_profile: bash_profile은 리눅스(or 유닉스)의 중요한 설정을 하는 파일이니, 숨김파일로 존재한다. "." 이라는 점 의 의미가 숨김파일이라는 것이다.

3. ~/: 가장 기본 위치를 의미한다. 예를들어 ex) younghun.joo/home/Desktop/python 이런 폴더들 안에 .bash_profile이 있다면,

>> vi younghun.joo/home/Desktop/python/.bash_profile이라고 해주어야 했을 것이다.

 

vi 에디터로 .bash_profile을 열어서 아래부분을 추가해준다.

 

 

 

vi 에디터로 사용법:

 

원하는 위치에 가서

1. 소문자 'a' 를 누르면 그때부터 수정이 가능하다.

 

수정을 다 한 후에

2. 'esc' 키를 누른 후에 ':' 키를 누르고 저장(write)하고 종료(quit)을 의미하는 'wq' 키를 누르고 Enter!

 

 

그러나 

>> python -V 

를 입력하면 바뀌지 않았을 수도 있다.

 

.bash_profile은 환경설정 파일이기 때문에 컴퓨터가 한번 꺼졌다가 켜지면 그때 반영이 될 수도 있기 때문이다.

아래 명령을 실행하여 반영을 강제적으로 해준다.

 

>> source ~/.bash_profile

명령어를 입력 후,

>> python -V

3점대로 수정된 파이썬을 확인한다.

 

 

 

앞으로는 파이썬 3점대 버전으로

>> python

명령어를 통해 간단한 작업을 터미널 창에서 실행할 수있다.

 

 

## 중요 ##

PIP 설치하기!!

 

파이썬의 다양한 패키지(누가 만들어놓은 것)을 쉽게 다운받을 수 있도록 관리해주는 PIP 라는 시스템을 설치해준다.

파이썬 개발 환경에 패키지들을 설치하기 위해서 pip 명령을 자주 사용한다. pip는 파이썬으로 작성된 패키지 라이브러리들을 관리해주는 시스템이다. 

 

pip 에 대해서 궁금하다면 아래의 블로그를 통해 간단히 확인해보면 좋다.

https://dev.plusblog.co.kr/40

 

파이썬(Python) pip란 무엇인가?

파이썬의 장점 중 하나는 다양한 패키지들의 지원이다. numpy, beautifulsoup 같은 다양한 라이브러리 패키지들이 제공되어 머신러닝 프로젝트들의 실제 계산 과정을 쉽게 이용할 수 있다. 이런 패키지들의 제공은..

dev.plusblog.co.kr

pip를 설치하기 위해

terminal에서

>> sudo easy_install pip

입력한다.

 

비밀번호를 물어보면 mac 계정 비밀번호를 입력해주고,

설치가 완료되었으면,

 

>> pip -V

명령어를 입력하여, pip 가 잘 설치되었는지 확인한다. (버전이 나오면, 설치가 완료되었다고 간주)

 

 

이로써 앞으로는 주피터 환경에서 필요한 라이브러리가 있다면

terminal 창에서

 

ex)

>> pip install numpy

>> pip install pandas

처럼 손쉽게 설치해줄 수 있다.

반응형
반응형

파이썬 로고

Python2점대와 3점대가 차이가 생기는 이유: 두 버전간의 backward compatibility를 지원하지 않는 부분이 많다는 것이다.

 

python 2.7 버전이 2010년에 처음 세상에 나온 이후로, 연구 목적으로 사용되고 있고,

지금도 다양한 연구 목적으로 python 2점대를 사용중이다.

 

그러나 python2점대보다는 python3 점가 계속 발전하면서, numpy, pandas, SciPy, SymPy, IPython 등 연구목적으로 만들어진 수많은 Python 라이브러리는 Python 3점대에 호환성이 잘 되고, 계속 발전해가고 있다.

 

관련 영상 참고

https://youtu.be/f_6vDi7ywuA

 

이 외에 간단한 차이를 설명하자면,

 

1. xrange vs range

파이썬 2에서는 xrange를 지원하지만,

파이썬 3에서는 xrange는 아니고, range만 지원한다.

 

 

2. print

파이썬 2: print "test"

파이썬 3: print("test") <-- 괄호를 넣어주어야 한다.

 

3. 나눗셈

파이썬 2: 정수 / 정수 = 정수 (5/2=2)

파이썬 3: 정수 / 정수 = 실수 (5/2=2.5)

 

이렇게 차이가 발생하니, 파이썬의 버전을 잘 맞춰주어서 코드를 짜주어야 한다.(특히 나눗셈)

 

 


출처: https://goodtogreate.tistory.com/entry/Python-2-와-Python-3의-차이점 [GOOD to GREAT]

출처: https://tech.ssut.me/python-3-is-the-future/

 

반응형
반응형

 

아래의 코드를 명령창에 실행하면 된다.

 

>> sudo bash

>> chattr -i /etc/sudoers

>> chmod u+w /etc/sudoers

 

그 후 수정하면 된다.

ex)

>> vi /etc/sudoers

반응형

'IT' 카테고리의 다른 글

MacBook 파이썬 설치하기  (0) 2020.04.21
Python2 vs Python3  (0) 2020.04.21
이맥스 자동완성 기능 설치  (0) 2020.04.20
Expo.io를 이용한 React native 앱 만들기  (0) 2020.04.14
MacBook에 VM 설치  (0) 2020.04.14
반응형
# you can write to stdout for debugging purposes, e.g.
# print("this is a debug message")

def solution(A):
    # write your code in Python 3.6
    
    east_car_num = 1
    
    passing_car_num = 0
    
    # 최초 동쪽으로 가는 차 위치
    try:
    # 동쪽으로 가는 차가 없으면 에러 발생하여 passing_car가 없으므로 return 0
        east_car = A.index(0)
    except:
        return 0
        
    for i in range(east_car+1,len(A)):
        if A[i] == 1:
            passing_car_num += east_car_num
            
            if passing_car_num > 1000000000:
                return -1
        else:
            east_car_num += 1
            
            
    return passing_car_num
    
    
    pass
반응형

'Codility' 카테고리의 다른 글

Codility - MaxProductOfThree  (0) 2020.04.24
Codility - Distinct  (0) 2020.04.23
Codility - MinAvgTwoSlice  (0) 2020.04.19
Codility - GenomicRangeQuery  (0) 2020.04.19
Codility - CountDiv  (0) 2020.04.18
반응형

.el 파일은 

make 명령어로 실행할 수 있다.

 

emacs --deamon ==> 이맥스 데몬 서버 띄우기

 

emacs -q => GUI 창 열기

emacs -t => 콘솔창에서 편집

 

M-x : emacs -q 로 창을 하나 여고, esc+x 를 같이 누르면  된다.

 

 

emacsclient -e "(kill-emacs)" : 정상적으로 이맥스 서버 데몬 종료 명령어

반응형

'IT' 카테고리의 다른 글

Python2 vs Python3  (0) 2020.04.21
os, readonly 파일 수정방법(feat, sudoers 수정)  (0) 2020.04.20
Expo.io를 이용한 React native 앱 만들기  (0) 2020.04.14
MacBook에 VM 설치  (0) 2020.04.14
이맥스 사용법  (0) 2020.04.09

+ Recent posts