pipx; 격리된 환경에서 Python 애플리케이션 설치 및 실행
·
개발/Python
pipx란?pipx는 Python으로 작성된 최종 사용자 애플리케이션을 설치하고 실행하는 데 도움을 주는 도구입니다. 대략 macOS의 brew, JavaScript의 npx, 그리고 Linux의 apt와 비슷합니다.https://github.com/pypa/pipx?tab=readme-ov-file GitHub - pypa/pipx: Install and Run Python Applications in Isolated EnvironmentsInstall and Run Python Applications in Isolated Environments - pypa/pipxgithub.com pip와 밀접한 관련이 있으며, 실제로 pip를 사용하지만, 주로 명령줄에서 직접 애플리케이션으로 실행할 수 있는 Py..
torch.distributed.init_process_group
·
개발/Pytorch
https://pytorch.org/docs/stable/distributed.html#torch.distributed.init_process_group Distributed communication package - torch.distributed — PyTorch 2.0 documentation Shortcuts pytorch.org 문서에 나와있는 설명으로는 default process group을 초기화하고, distributed package 또한 초기화하는 동작을 한다. process group을 초기화하는 방법에는 크게 두가지의 주된 방법이 있다: store, rank, world_size를 명시적으로 입력하는 방법 peer들을 어떻게/어디서 찾을지에 대해 나타내는 init_method를 입..
YSCEC 크롤러2
·
개발/NodeJS
YSCEC-CRAWLER2 /와이섹 크롤러/ 와이섹 크롤/ 크롤링/ 와이섹 연세대학교 지식창조 커뮤니티라는 거창한 이름의 사이트가 있습니다. 이 사이트는 연세대학교 재학생들의 강의 공지와 강의 자료들이 올라오는 사이트인데, 매일매일 로그인하고 수강하는 과목의 자료들이 업로드 되었는지 확인하는 작업이 여간 귀찮은게 아닙니다. 그래서 이번 개강을 맞아 나 대신 매일매일 와이섹 내용을 체크해주는 크롤러를 다시금 개발하게 되었습니다. 이전에 YSCEC-CRAWLER 를 올렸었는데, 이에 관한 내용은 다음 링크에서 확인해보시기 바랍니다. 블로그 : http://dytis.tistory.com/6깃허브 : https://github.com/pfldy2850/YSCEC-CRAWLER 개발환경 NodeJSES7 문법으..
리액트 #08 - Forms
·
개발/ReactJS
이번에는 리액트에서 Form을 어떻게 다루는 지에 대해서 알아봅시다. 리액트는 데이터의 흐름이 단방향입니다. 따라서 여러 폼에 변화하는 같은 값을 적용하려면, 따로 처리를 해주어야 합니다. 아래와 같이 초기 value 값을 state.data로 적용해주고, 이 후에 onChange로 변하는 값을 state로 갱신합니다. App.js import React from 'react'; class App extends React.Component { constructor(props) { super(props); this.state = { data: 'Initial data...' } this.updateState = this.updateState.bind(this); }; updateState(e) { this..
리액트 #07 - Component Life Cycle
·
개발/ReactJS
ReactJS에는 컴포넌트들에 대한 라이프 사이클 메서드들이 존재합니다. 이번 포스트에서는 이 라이프 사이클 메서드들에 대해서 알아봅시다. Life Cycle Methods- componentWillMount 서버와 클라이언트 모두에게 렌더링하기 전에 작동됩니다. - componentDidMount 클라이언트에서 첫 렌더링이 이루어지고 난 후에 작동됩니다. 이 메서드에서 AJAX 리퀘스트나 DOM, state 갱신을 진행합니다. 또한 다른 자바스크립트 프레임워크나 다른 함수들과 합쳐지는 것에 사용되며, 이 때는 setInterval이나 setTimeout 등과 같은 함수로 지연을 시키게 됩니다. - componentWillReceiveProps Prop가 갱신되면, 다른 렌더링이 작동하기 전에 불려집니다..
리액트 #06 - Component API
·
개발/ReactJS
이번에는 Component API 중 setState(), forceUpdate(), 그리고 ReactDOM.findDOMNode()라는 메소드에 대해서 알아보자. setState setState는 state를 변경할 때 사용합니다. 기존의 state를 대체하는 것이 아닌, 기존의 state에 변화를 줍니다. App.js import React from 'react'; class App extends React.Component { constructor() { super(); this.state = { data: [] } this.setStateHandler = this.setStateHandler.bind(this); }; setStateHandler() { var item = "setState..."..
리액트 #05 - State & Props
·
개발/ReactJS
ReactJS #05 - State & Props 이번 포스팅에서는 리액트의 State와 Props에 대해서 알아보겠습니다. State State는 데이터가 오는 곳입니다. 리액트를 사용할 때에는 이 State를 최소화 하고, stateful 컴포넌트를 줄이는 것이 좋습니다. 만약 스테이트를 사용하는 10개의 컴포넌트를 사용한다면, 한 컴포넌트에서 다른 모든 state를 정의하고 다른 컴포넌트를 참조하여 사용하는 것이 좋습니다. App.js import React from 'react'; class App extends React.Component { constructor(props) { super(props); this.state = { header: "Header from state...", "con..
리액트 #04 - Components
·
개발/ReactJS
React JS #04 - Components 리액트는 컴포넌트로 시작해서 컴포넌트로 끝난다고 해도 과언이 아니다. 이번 포스트에서는 리액트의 컴포턴트에 대해서 예시를 통해 알아보자. Stateless Example 처음에는 State가 없는 컴포넌트를 만들어보자. 우선 컴포넌트는 컴포넌트들끼리 참조가 가능하다. 다음과 같이 App.js를 수정해보자. import React from 'react'; class App extends React.Component { render() { return ( ); }} class Header extends React.Component { render() { return ( Header ); }} class Content extends React.Component {..
Non-ASCII character 에러
·
개발/Python
Python : Non-ASCII character 에러 파이썬으로 작업을 하다보면, 주석을 한글로 달 때가 있는데 이런 경우에 신택스 에러가 발생한다. 에러 메세지는 다음과 같다. File "/Users/Documents/python/scapy/main.py", line 3SyntaxError: Non-ASCII character '\xec' in file /Users/Documents/python/scapy/main.py on line 3, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 이런 경우에는 코드 내에 한글이 들어있어, 파이썬이 읽어들이지 못하기 때문에 발생한다. 해결방법은 간단하게, 파이썬 코드 ..
리액트 #03 - JSX
·
개발/ReactJS
React JS #03 - JSX 리액트는 일반적인 Javascript 와는 다르게 JSX라는 템플릿을 사용한다. 꼭 필요한 건 아니지만, 많은 장점이 있다. - JSX는 Javascript 코드로 컴파일하는 과정에서 최적화된다. - JSX는 예측불가능한 결과를 내지 않는다. 대부분의 에러들은 컴파일과정에서 발견된다. - HTML에 친근하여 개발이 쉽고 빠르다. JSX 사용하기 JSX는 일반적인 HTML과 많이 닮았습니다. class App extends React.Component { render(){ return ( Hello World!!! ); }} HTML과 비슷하지만, JSX를 쓰기위해선 많은 것들을 염두해두고 있어야합니다. Nested Elements 많은 것들을 반환하고자 한다면, 하나의 ..