'프로그래밍'에 해당되는 글 22건

  1. 2018.08.27 tensorflow 설정
  2. 2018.02.26 전력 시스템 용어 - 보호기기
  3. 2017.08.08 CNN MNIST
  4. 2017.07.24 기본 텐서플로우 소프트맥스 MNIST 코드.
  5. 2017.06.20 넘파이 행렬 인덱스 1
  6. 2017.02.07 python 버전 올리기
  7. 2017.02.07 우분투 한글 설정
  8. 2017.02.07 테마 변경
  9. 2017.02.03 PyQt5 1 Introduction
  10. 2017.02.03 PyQt5 0 Tutorial 2

근 1년 만에 다시 시작하려니 개발환경 셋팅하는 것도 낯설다.
또 잊기 전에 정리해두자.

현재 개발 환경은
ubuntu 18.04 LTS
nvidia GTX 1080 Ti

1. gpu 드라이버 설정

아래 둘 중에 한가지 방법으로 설정.
1)
$ ubuntu-drivers devices 내 기기 확인
$ sudo apt install nvidia-driver-390 설치
$ nvidia-smi 로 확인

2)
$ add-apt-repository ppa:graphics-drivers/ppa
$ apt update
$ apt install nvidia-390
$ nvidia-smi

2. cuda 9.0 

nvidia 사이트에  가서 .deb 파일을 다운받고 설치.

$ dpkg -i cuda-repo-ubuntu1704-9-0-local_9.0.176-1_amd64.deb
$ apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
$ apt-get install cuda

3. .bashrc 수정

export PATH=$PATH:/usr/local/cuda/bin
export CUDADIR=/usr/local/cuda
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64

4. cudnn 7.0
https://developer.nvidia.com/rdp/cudnn-archive )

$ tar xvfz cudnn-9.0-linux-x64-v7.tgz
$ cp cuda/include/* /usr/local/cuda/include
$ cp -d cuda/lib/* /usr/local/cuda/lib64
$ chmod a+r /usr/local/cuda/include/cudnn.h
$ chmod a+r /usr/local/cuda/lib64/libcudnn*

patch 파일들을 다 받아서 순서대로

dpkg -i 패키지.deb 로  설치.

5. tesorflow-gpu 1.10.1

텐서플로우 설치.

$ pip3 install tensorflow-gpu


'프로그래밍 > Machine Learning' 카테고리의 다른 글

CNN MNIST  (0) 2017.08.08
기본 텐서플로우 소프트맥스 MNIST 코드.  (0) 2017.07.24
Posted by 게 르 니 카

전력 시스템 중 스위치나 개폐기 같은 보호기기 중심으로 정리.


컷아웃 스위치( COS : Cut Out Switch )

컷아웃스위치에 대한 이미지 검색결과

COS는 주로 변압기의 1차측에 각 상마다 취부하여 변압기의 보호와 개폐를 위한 것으로서 단극으로 제작되며 내부의 퓨즈가 용단되면 퓨즈홀더가 중력에 의하여 스스로 개방되므로 용단여부를 쉽게 식별할 수 있다.
(COS에 퓨즈대신 동봉을 사용할 경우 단로기의 대용으로 사용할 수 있다.) 


특·고압 컷아웃트위치(COS)

특·고압 컷아웃트 스위치( High-Voltage Cut-Out Switches )는 변압기 및 주요기기의 1차측에 설치 사용하며 단락이나 지락 사고 또는 과부하에 등에 의한 과전류로부터 기기를 보호하기 위해 사용합니다. 고장전류가 흐르면 휴즈링크가 용단되면서 발생하는 아크열에 의해 휴즈통 내벽의 물질이 분해, 절연성가스가 발생하여 아크가 소호되어 고장전류가 차단 됩니다.


고장구간자동개폐기(ASS)

고장구간자동개폐기 제품사진

고장구간자동 개폐기( Auto-Sectionalizing Switches )는 22.9kV-y 배전선로에서 변젼소의 CB 또는 Recloser 부하 측에 부하용량 4,000kVA(특수부하 2,000kVA)이하인 수용가 수전 인입점에 설치하여 수용가의 고장구간을 후비 보호장치와 협조하여 자동으로 고장구간만을 차단하므로 고장으로 인한 정전피해를 최소화시키는 선로 보호용 개폐 기입니다.


가스절연부하개폐기(25.8㎸ SF6 Gas Insulated Load Break Switches)

가스절연부하개폐기 제품사진

가스절연부하개폐기(25.8㎸ SF6 Gas Insulated Load Break Switches) 제어함 조작형 SF6 가스절연 방식의 부하개폐 기는 22.9㎸-y 가공배전선로에 설치하여 사용되는 개폐기로 절연 및 아크 소호능력이 뛰어난 SF6 가스를 사용 재점 호. 재발호가 없는 부하 개폐성능을 발휘하고 현장 또는 원격에서 통신수단에 의해 각종 상태정보 및 조작이 가능한 배전 자동화 개폐기입니다.



가스차단기(GCB, Gas Circuit Breaker)

투입 차단 시 발생하는 arc 생성물을 6-불화유황(SF6)의 압축가스를 이용하여 소호하는 차단기. 가스차단기에는 차단할 때 12~15kg/㎠.g의 높은 가스 계통에서 약 2kg/㎠.g의 낮은 가스 계통으로 SF6 GAS를 뿜어서 소호하는 밀폐 사이클의 2중 가스식과 차단할 때만 피스톤작용으로 가스압을 상승시키는 단일 가스방식의 2종류가 있다.


계전기(Relay)

기기나 선로에 취부하여 고장 발생 시에 기기를 손상하기 전에 간단한 동작으로 복잡한 또는 원방의 기기를 확실히 제어하고 또 다른힘을 받아서 기기를 여러 가지 목적에 의해 동작시키는 장치.


과전류계전기(OCR, over current relay 50/51)

전류의 크기가 일정치 이상으로 되었을 때 동작하는 계전기이며 특별히 지락사고 시 지락전류의 크기에 응동하도록 한 것을 지락과전류계전기라 하고 일반 과전류계전기를 OCR(over current relay), 지락과전류계전기를 OCGR(over current ground relay)이라 함


기중부하개폐기( Interrupter Switch )

공기중에서 정격전류를 개폐(開閉)할수 있는 스위치13.2/22.9 kv-Y선로에서 주로 사용하며 자가용 수전설비에서는 내선 규정에 의해 수전 용량이 300[kVA]이하인 인입개폐기로 사용토록 하고 있다.


기중차단기(ACB, Air circuit breaker)

전기회로에서 접촉자간의 개폐동작이 공기 중에서 이상적으로 행해지는 차단기. 전류비를 고려하여 적합한 적용을 할 때 전류의 손실 없도록 과전류를 미리 예측하여 자동적으로 회로를 개방하거나 수동적인 방법으로 회로를 개폐하며, 교류 1,000V 이하의 회로에서 사용한다.


누전차단기(ELCB,leakage current circuit breaker)

개폐기구, 트립장치 등을 절연물 용기 내에 일체로 조립한 것으로 통전상태의 전로를 수동 또는 전기 조작에 의해 개폐할 수 있으며, 과부하, 단로 및 누전발생 시 자동적으로 전류를 차단하는 기구를 말함.


단로기(Disconnecting switch)

부하전류를 어떤 모양으로 제거한후 회로를 격리하도록 하기위한 장치. 공칭전압 3.3kV 이상 전로에 사용되며 기기의 보수점검 시 또는 회로전환 변경을 하기 위해 사용되지만 통상부하전류의 개폐는 하지 않는 기기이다.


모선(bus,bus bar )

여러 개의 전원 또는 공급 회로가 접속되는 도체


뱅크용량(Bank capacity)

삼상전력의 변압을 행하는 변압기의 조(組)를 뱅크(bank)라 하며 단상기에서는 3대를 조합하여 뱅크로서 사용하며 그 경우의 총출력 kVA를 뜻한다.


병렬콘덴서(shunt capacitor)

선로에 병렬로 접속하여 중부하시에 부하의 지상무효전력을 보상하고
역률의 개선, 전압강하의 경감, 전력손실의 저감을 목적으로하는 콘덴서.


부하개폐기(LBS, Load Breaker Switch)

수변전설비의 인입구 개폐기로 많이 사용되고 있으며 전력퓨즈의 용단시 결상을 방지하는 목적으로 채용되고 있다 3상 부하가 있는 경우 트립장치(Trip Device)가 있는 3극부하개폐기와 조합한 전력퓨즈를 사용하는 것이 바람직하다. 동작내용은 전력퓨즈가 내장된 동작표시장치가 돌출하면서 트립장치가 작동하여 스프링에 축적된 힘에 의하여 가동부하 접점을 자동 개방시키도록 되어있다. 따라서 3상에 연결된 어느 전력퓨즈라도 결상을 방지하게 된다


Posted by 게 르 니 카




# MNIST 데이터 불러오기.

from tensorflow.examples.tutorials.mnist import input_data

mnist = input_data.read_data_sets('MNIST_data', one_hot=True)


# tensorflow 세션 구동.

import tensorflow as tf

sess = tf.InteractiveSession()


# x  : 트레이닝 입력 벡터.  

# y_ : 결과 레이블.

x = tf.placeholder(tf.float32, shape=[None, 784])

y_ = tf.placeholder(tf.float32, shape=[None, 10])

# 입력 벡터를 28*28 행렬로 전환. 

x_image = tf.reshape(x, [-1,28,28,1])


# Weight 초기화 함수. 

def weight_variable(shape):

  initial = tf.truncated_normal(shape, stddev=0.1)

  return tf.Variable(initial)


# Bias 초기화 함수. 

def bias_variable(shape):

  initial = tf.constant(0.1, shape=shape)

  return tf.Variable(initial)


# 2D convolution 함수.

def conv2d(x, W):

  return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME')


# 2*2 max pooling 함수.

def max_pool_2x2(x):

  return tf.nn.max_pool(x, ksize=[1, 2, 2, 1], strides=[1, 2, 2, 1], padding='SAME')


# 첫번째 Convolutional Layer

W_conv1 = weight_variable([5, 5, 1, 32])

b_conv1 = bias_variable([32])

h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1)

h_pool1 = max_pool_2x2(h_conv1)


# 두번째 Convolutional Layer

W_conv2 = weight_variable([5, 5, 32, 64])

b_conv2 = bias_variable([64])

h_conv2 = tf.nn.relu(conv2d(h_pool1, W_conv2) + b_conv2)

h_pool2 = max_pool_2x2(h_conv2)


# fully-Connected Layer

W_fc1 = weight_variable([7 * 7 * 64, 1024])

b_fc1 = bias_variable([1024])

h_pool2_flat = tf.reshape(h_pool2, [-1, 7*7*64])

h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, W_fc1) + b_fc1)


# Dropout Layer

keep_prob = tf.placeholder(tf.float32)

h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob)


# Readout Layer

W_fc2 = weight_variable([1024, 10])

b_fc2 = bias_variable([10])


y_conv = tf.matmul(h_fc1_drop, W_fc2) + b_fc2


# 훈련, 측정 모델.

cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y_, logits=y_conv))

train_step = tf.train.AdamOptimizer(1e-4).minimize(cross_entropy)

correct_prediction = tf.equal(tf.argmax(y_conv,1), tf.argmax(y_,1))

accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32))


sess.run(tf.global_variables_initializer())


for i in range(10000):

  batch = mnist.train.next_batch(50)

  if i%1000 == 0:

    train_accuracy = accuracy.eval(feed_dict={

        x:batch[0], y_: batch[1], keep_prob: 1.0})

    print("step %d, training accuracy %g"%(i, train_accuracy))

  train_step.run(feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})


print("test accuracy %g"%accuracy.eval(feed_dict={x: mnist.test.images, y_: mnist.test.labels, keep_prob: 1.0}))


'프로그래밍 > Machine Learning' 카테고리의 다른 글

tensorflow 설정  (0) 2018.08.27
기본 텐서플로우 소프트맥스 MNIST 코드.  (0) 2017.07.24
Posted by 게 르 니 카


# -*- coding: utf-8 -*-


# MNIST 데이터 다운로드.

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets( "MNIST_data/", one_hot=True )

# TensorFlow 라이브러리 추가.
import tensorflow as tf

# 테스트를 위한 라이브러리 추가.
import matplotlib.pyplot as plt
import numpy as np

# 변수들 설정.
train_data = tf.placeholder( tf.float32, [None, 784] )

Weights = tf.Variable( tf.zeros( [784, 10] ) )

Bias = tf.Variable( tf.zeros([10] ) )

Hypothesis = tf.nn.softmax( tf.matmul( num_data, Weights ) + Bias )


# cross-entropy 모델 설정.

learning_rate = 0.25

num_label = tf.placeholder( tf.float32, [None, 10] )

cost = tf.reduce_mean( -tf.reduce_sum( num_label * tf.log( Hypothesis ), reduction_indices=[1] ) )

optimizer = tf.train.GradientDescentOptimizer( learning_rate ).minimize( cost )

# cost = tf.reduce_mean( tf.nn.softmax_cross_entropy_with_logits( logits=Hypothesis, labels=num_label ))

# optimizer = tf.train.AdamOptimizer( learning_rate=learning_rate ).minimize( cost )  # Gradient Descen


# 경사하강법으로 모델 학습.

batch_size = 100

with tf.Session( ) as sess :

    sess.run( tf.global_variables_initializer( ) )

    for i in range( 2000 ) :

        batch_xs, batch_ys = mnist.train.next_batch( batch_size )

        sess.run( optimizer, feed_dict={num_data:batch_xs, num_label:batch_ys} )

        if i % 200 == 0 :

            print( "{0} step, Accuracy {1} ".format( i, sess.run( cost, feed_dict={num_data:batch_xs, num_label:batch_ys} ) ) )

        

    # 학습된 모델이 얼마나 정확한지를 출력한다.

    correct_prediction = tf.equal( tf.argmax(Hypothesis,1), tf.argmax(num_label,1) )

    Accuracy = tf.reduce_mean( tf.cast( correct_prediction, tf.float32 ) )

    print( sess.run( Accuracy, feed_dict={num_data:mnist.test.images, num_label:mnist.test.labels} ) )


'프로그래밍 > Machine Learning' 카테고리의 다른 글

tensorflow 설정  (0) 2018.08.27
CNN MNIST  (0) 2017.08.08
Posted by 게 르 니 카

자꾸 헥갈려서 정리한다.

다음과 같이 4차원 행렬을 만들어서 테스트 해보면

 

아래 첫번째 이미지의 연산은 각 axis별 데이터, 아래편은  axis 별 더하기.

raw, column, depth 나 x, y, z 등으로 접근하면 더 헥갈리는 것 같고

차라리 바깥 쪽부터의 큰 덩어리로 계산하는게 차원이 높아졌을 때도 편한 것 같다.

더하기와 같은 연산의 경우, 예를 들면 sum( 0(axis) )라고 하면 0 축으로 두 덩어리가 있으니 그대로

더하면 된다. 4*5 행렬 3덩어리이니 각 위치 60개의 숫자를 더하는 것이다. sum( 2 ) 이면 3번째 덩어리, 즉  위 그림에서 보면 원소가 5개인 벡터가 4줄 씩 1덩어리를 이루고 그 덩어리가 2개 있다. 제일 윗줄에 있는 4개의 벡터를 그대로 더하면 답의 첫 줄이 된다. [ 0+5+10+15, 1+6+11+16, 2+7+12+17, 3+8+13+18, 4+9+14+19 ] 가 된다. 

  

'프로그래밍 > python' 카테고리의 다른 글

python 버전 올리기  (0) 2017.02.07
PyQt5 1 Introduction  (0) 2017.02.03
PyQt5 0 Tutorial  (2) 2017.02.03
Posted by 게 르 니 카

우분투 16.04 LTS를 설치하면 파이썬이 2.7.12가 기본 설치되어 있다.

요즘은 주로 3.5를 사용하는 것 같아 버전 업을 시도한다.


sudo add-apt-repository ppa:fkrull/deadsnakes

sudo apt update

sudo apt install python3.5


/usr/bin/ 폴더에 가서 ls -al py* 쳐보면 파이썬 관련해서 버전별로 설치된 것, 링크 다 보인다.

.bashrc 에 다음 한 줄 추가하면 끝.


alias python='/usr/bin/python3'


'프로그래밍 > python' 카테고리의 다른 글

넘파이 행렬 인덱스 1  (0) 2017.06.20
PyQt5 1 Introduction  (0) 2017.02.03
PyQt5 0 Tutorial  (2) 2017.02.03
Posted by 게 르 니 카

우분투를 반복해서 설치하다 보니 한글 설정 찾아보는 것도 지겹다.


우선 간단하게 정리해 본다.


fcitx 가 한글을 잘 지원하는 것 같다.


영어로 우분투 설치 후 아래와 같이 fcitx 설치.


sudo apt install fcitx-hangul


설치 후에 'System Settings'에 가서 'Language Support'의 'Install/Remove Language...'

안에 들어가서  'Korean'이 설치되었는지 확인하고, 그 아래

버튼인  키보드 입력 방법을 'fcitx'로 선택하고 로그인을 다시 한다.


다시 시스템 설정에서 'Text Entry'에 가서 '+'를 누른 다음 'Hangul(Fcitx)'를 선택한다.


버튼 2개 누르는 것도 '한/영' 키만 누르는 것으로 설정하기 위해

'dconf-editor' 설치


sudo apt install dconf-editor


실행 후에 org / gnome / desktop / wm / keybindings 로 찾아 들어가

'switch-input-source' 라벨의 오른편을 더블 클릭해서 ['Hangul']로 설정한다.

'프로그래밍 > Ubuntu' 카테고리의 다른 글

테마 변경  (0) 2017.02.07
remote desktop  (0) 2016.10.06
Ctrl 키와 Caps Lock 키 바꾸기  (0) 2016.09.29
java 설치  (0) 2016.09.29
Posted by 게 르 니 카

우분투를 시작하면서 부터 기본 화면도 나쁘지 않아서 그대로 사용하다가

최근에 조금 식상해져서 테마를 바꾸어 보았다.


우선 아이콘을 쉽게 변경하기위해 트윅 툴을 설치한다.


 sudo apt install unity-tweak-tool


터미널에서 unity-tweak-tool을 입력해 실행하면 'Icons' 가 보인다.



테마는 검색해보니 'Moka'가 맘에 든다.


sudo add-apt-repository ppa:moka/daily

sudo apt update

sudo apt install moka-icon-theme


페이퍼 테마도 괜찮다.


sudo add-apt-repository ppa:snwh/pulp

sudo apt update

sudo apt install paper-icon-theme


'프로그래밍 > Ubuntu' 카테고리의 다른 글

우분투 한글 설정  (0) 2017.02.07
remote desktop  (0) 2016.10.06
Ctrl 키와 Caps Lock 키 바꾸기  (0) 2016.09.29
java 설치  (0) 2016.09.29
Posted by 게 르 니 카

Introduction to PyQt5 파이큐티5 소개

This is an introductory PyQt5 tutorial. The purpose of this tutorial is to get you started with the PyQt5 toolkit. The tutorial has been created and tested on Linux. PyQt4 tutorial covers PyQt4, which is a blending of the Python language (2.x and 3.x) to the Qt4 library.
파이큐티5 지침서의 소개부분이다. 이 지침서의 목적은 여러분이 파이큐티5 툴킷을 시작할 수 있게 하는 것이다. 이 지침서는 리눅스 상에서 만들어지고 테스트되었다.  파이큐티4 지침서는 파이썬2, 3과 큐티4 라이브러의 결합을 다룬  파이큐티4에 대한 내용이다.

About PyQt5 파이큐티5란?

PyQt5 is a set of Python bindings for Qt5 application framework from Digia. It is available for the Python 2.x and 3.x. This tutorial uses Python 3. Qt library is one of the most powerful GUI libraries. The official home site for PyQt5 is www.riverbankcomputing.co.uk/news. PyQt5 is developed by Riverbank Computing.
파이큐티5는 디지아가 만든 큐티5 애플리케이션 프레임워크와 파이썬을 결합시키는 묶음이다. 파이썬 2, 3에 사용할 수 있다. 이 지침서는 파이썬3를 사용한다. 큐티 라이브러리는 가장 강력한 GUI 라이브러리의 하나이다.공식적인 파이큐티5의 주소는 www.riverbankcomputing.co.uk/news 이 곳이다. 파이큐티5는 리버뱅크컴퓨팅사에 의해 개발되었다.  

PyQt5 is implemented as a set of Python modules. It has over 620 classes and 6000 functions and methods. It is a multiplatform toolkit which runs on all major operating systems, including Unix, Windows, and Mac OS. PyQt5 is dual licensed. Developers can choose between a GPL and a commercial license.
 파이큐티5는 파이썬 모듈의 묶음으로 구현되었다. 파이큐티5는 620개 이상의 클래스와 6000개 이상의 함수 또는 메소드들로 구성되었다. 파이큐티5는 주요 운영체제, 유닉스, 윈도우, 맥OS 등등 에서 모두 구동가능한 멀티플랫폼 툴킷이다. 파이큐티5는 두가지 라이센스 방식을 가지고 있다. 개발자들은 GPL 방식이나 상업용 라이센스를 선택할 수 있다.     

PyQt5's classes are divided into several modules, including the following:
파이큐티5의 클래스들은 아래의 모듈을 포함해서 여러개의 모듈로 나뉘어 있다.

  • QtCore
  • QtGui
  • QtWidgets
  • QtMultimedia
  • QtBluetooth
  • QtNetwork
  • QtPositioning
  • Enginio
  • QtWebSockets
  • QtWebKit
  • QtWebKitWidgets
  • QtXml
  • QtSvg
  • QtSql
  • QtTest

The QtCore module contains the core non GUI functionality. This module is used for working with time, files and directories, various data types, streams, URLs, mime types, threads or processes.
큐티코어 모듈은 GUI 외의 핵심적인 기능을 담고 있다. 이 모듈은 시간, 파일, 폴더, 다양한 데이타 타입, 스트림, URL, MIME타입, 쓰레드 또는 프로세스 등을 처리하기 위해 사용된다. 

The QtGui contains classes for windowing system integration, event handling, 2D graphics, basic imaging, fonts and text.
큐티구이는 윈도우 시스템의 전반적인 내용, 이벤트 핸들링, 2D그래픽, 기본적인 이미지 관련 작업, 폰트, 텍스트 처리 등을 위한 클래스들을 포함하고 있다.

The QtWidgets module contains classes that provide a set of UI elements to create classic desktop-style user interfaces.
큐티위젯은 고전적인 데스크탑 스타일 UI를 만드는 다양한 요소들을 제공한다. 

The QtMultimedia contains classes to handle multimedia content and APIs to access camera and radio functionality.
큐티멀티미디어는 카메라나 라디오 기능에 접근 가능한 멀티미디어 관련 기능이나 API를 제공하는 클래스들을 포함하고 있다.  

The QtBluetooth module contains classes to scan for devices and connect and interact with them.
큐티블루투스는 블루투스 장치들을 스캔하고 연결해서 서로 정보를 주고받을 수 있는 클래스들을 포함하고 있다.   

The QtNetwork module contains the classes for network programming. These classes facilitate the coding of TCP/IP and UDP clients and servers by making the network programming easier and more portable.
큐티네트워크는 네트웍 프로그래밍 관련 클래스들을 포함하고 있다. 이 클래스들은 TCP/IP나  UDP 클라이언트, 서버 코딩을 활용해서 네트웍 프로그래밍을 더 쉽고 간편하게 만드는 클래스들이다.

The QtPositioning contains classes to determine a position by using a variety of possible sources, including satellite, Wi-Fi, or a text file.
큐티포지셔닝은 인공위성, 와이파이, 텍스트파일 등등 가능한 모든 자원을 사용하여 위치를 결정할 수 있는 클래스들을 포함하고 있다.  

The Enginio module implements the client-side library for accessing the Qt Cloud Services Managed Application Runtime.
이엔지엔아이오 모듈은 애플리케이션이 구동될 때 유지되는 큐티 클라우드 서비스에 접근할 수 있는 클라이언트 쪽 라이브러리를 구현해놓은 모듈이다.  

The QtWebSockets module contains classes that implement the WebSocket protocol.
큐티웹소켓은 웹소켓 프로토콜을 구현한 클래스들을 포함하고 있다.

The QtWebKit contains classes for a web browser implementation based on the WebKit2 library.
큐티웹킷은 웹킷2 라이브러리에 기반해서 구현해놓은 웹브라우저 관련 클래스들을 포함하고 있다.

The QtWebKitWidgets contains classes for a WebKit1 based implementation of a web browser for use in QtWidgets based applications.
큐티웹킷위젯은 큐티위젯으로 만든 애플리케이션을 위한 웹브라우저의 웹킷1 기반 구현을 위한 클래스들을 포함하고 있다. 

The QtXml contains classes for working with XML files. This module provides implementation for both SAX and DOM APIs.
큐티엑스엠엘은 XML파일을 처리하는 함수들을 포함하고 있다. 이 모듈은 SAX와 DOM API 를 위한 것들을 구현해놓았다.  

The QtSvg module provides classes for displaying the contents of SVG files. Scalable Vector Graphics (SVG) is a language for describing two-dimensional graphics and graphical applications in XML.
큐티에스브이지 모듈은 SVG파일의 내용을 디스플레이하기 위한 클래스들을 제공한다. 스케일러블 벡터 그래픽스는 2차원 그래픽스와 XML에 포함되어 있는 그래픽 응용프로그램을 위한 언어이다.   

The QtSql module provides classes for working with databases.
큐티에스큐엘은 데이타베이스 관련한 클래스들을 제공한다.  

The QtTest contains functions that enable unit testing of PyQt5 applications.
큐티테스트는 파이큐티5 응용프로그램의 유닛테스팅을 위한 함수들이 포함되어 있다.

PyQt4 and PyQt5 differences 파이큐티4와 파이큐티5의 차이

The PyQt5 is not backward compatible with PyQt4; there are several significant changes in PyQt5. However, it is not very difficult to adjust older code to the new library. The differences are, among others, the following:
파이큐티5는 파이큐티4와 하위호환이 되지 않는다. 파이큐티5에는 몇가지 중요한 변화가 있다. 그렇지만, 이전 코드를 새로운 라이브러리에 맞추는 작업이 어렵지는 않다. 그 중 주요한 차이점은 다음과 같다.

  • Python modules have been reorganized. Some modules have been dropped (QtScript), others have been split into submodules (QtGui, QtWebKit).
    파이썬 모듈이 재구성되었다. 파이스크립트 같은 모듈은 사용하지 않기로 했고 큐티구이나 큐티웹킷 같은 다른 모듈은 쪼개졌다.
  • New modules have been introduced, including QtBluetooth, QtPositioning, or Enginio.
    큐티블루투스, 큐티포지셔닝, 엔지엔아이오 같은 새로운 모듈이 추가되었다.
  • PyQt5 supports only the new-style signal and slots handlig. The calls to SIGNAL() or SLOT() are no longer supported.
    파이큐티는 새로운 방식의 시그날-슬롯 처리 방식을 지원한다. SIGNAL(), SLOT() 함수의 호출 같은 방식은 더 이상 지원하지 않는다. 
  • PyQt5 does not support any parts of the Qt API that are marked as deprecated or obsolete in Qt v5.0.
    파이큐티5는 큐티5.0에서 사용안하거나 더 이상 사용안할 것이라고 지정한 API들을 더 이상 지원하지 않는다. 

Python

python logoPython is a general-purpose, dynamic, object-oriented programming language. The design purpose of the Python language emphasizes programmer productivity and code readability. Python was initially developed by Guido van Rossum. It was first released in 1991. Python was inspired by ABC, Haskell, Java, Lisp, Icon, and Perl programming languages. Python is a high-level, general purpose, multiplatform, interpreted language. Python is a minimalistic language. One of its most visible features is that it does not use semicolons nor brackets. It uses indentation instead. There are two main branches of Python currently: Python 2.x and Python 3.x. Python 3.x breaks backward compatibility with previous releases of Python. It was created to correct some design flaws of the language and make the language more clean. The most recent version of Python 2.x is 2.7.9, and of Python 3.x is 3.4.2. Python is maintained by a large group of volunteers worldwide. Python is open source software. Python is an ideal start for those who want to learn programming.
파이썬은 범용적인, 동적이며, 객체지향적인 프로그래밍 언어이다. 파이썬 언의를 만든 목적은 프로그래머의 생산성과 코드 가독성을 높이기 위해서였다. 파이썬은 처음에 귀도 반 로썸에 의해 개발되었다. 1991년에 처음으로 발표되었다. 파이썬은 ABC,하스켈, 자바, 리스프, 아이콘, 펄 같은 언어에 영향을 받았다. 파이썬은 상위 레벨의, 범용적인, 멀티플랫폼용, 해석 언어이다. 파이썬은 필요한 기능만 최소한으로 구현되어 있는 언어이다. 눈에 띄는 특징 중에 하나는 세미콜론이나 괄호를 사용하지 않는다는 것이다. 대신 들여쓰기를 사용한다. 최근에 파이썬은 버전2.X와 버전3.X 두가지 갈래로 갈라져 있다. 파이썬3은 이전 버전과 호환되지 않는다. 그 이유는 언어의 디자인 상의 결점을 보완하고 조금 더 깨끗하게 정리하기 위해서 내린 결정이었다. 최신의 2 대 버전은 2.7.9이고 3 대 버전은 3.4.2이다. 파이썬은 전세계의 많은 자원자들 그룹에 의해서 유지되고 있다. 파이썬은 오픈소스 소프트웨어이다. 파이썬은 프로그래밍을 배우기 위한 사람들을 위한 이상적인 출발점이다.  

This tutorial uses Python 3.x version.
이 지침서는 파이썬 3.X 버전을 사용한다.

Python programming language supports several programming styles. It does not force a programmer to a specific paradigm. Python supports object-oriented and procedural programming. There is also a limited support for functional programming.
파이썬 프로그래밍 언어는 몇가지 프로그래밍 스타일을 지원한다. 파이썬은 개발자들에게 특정한 패러다임을 강요하지 않는다. 파이썬은 객체지향이든 절차적인 개발이든 다 지원한다. 함수적인 프로그래밍도 제한된 범위에서 지원한다.

The official web site for the Python programming language is python.org
파이썬 프로그래밍 언어의 공식 웹 사이트는 python.org 이다.

Perl, Python, and Ruby are widely used scripting languages. They share many similarities and they are close competitors.
펄, 파이썬, 루비는 널리 사용되는 스크립트형 언어이다. 이들은 많은 유사점도 있으며 긴밀하게 경쟁하고 있기도 하다. 

This chapter was an introduction to PyQt5 toolkit.
이 장은 파이큐티5 툴킷의 소개였다.

'프로그래밍 > python' 카테고리의 다른 글

넘파이 행렬 인덱스 1  (0) 2017.06.20
python 버전 올리기  (0) 2017.02.07
PyQt5 0 Tutorial  (2) 2017.02.03
Posted by 게 르 니 카

혼자 공부하다보니 자꾸 챗바퀴 도는 것 같아 정리하면서 공부하려고 작성한다.
서핑하다가 보니 젯코드( http://zetcode.com/gui/pyqt5/ )라는 사이트가 잘 만들어진 것 같아
일단 번역을 하려고 생각하고 있는데, 중간에 내용을 추가하거나 보완해서 '증보판'처럼 만드는 것도 나쁘지 않을 것 같다는 생각이 든다.

PyQt5 tutorial
파이큐티5 지침서

This is PyQt5 tutorial. The tutorial is suited for beginners and intermediate programmers. After reading this tutorial, you will be able to program non trivial PyQt5 applications.
아래 내용은 파이큐티5 지침서로 초급이나 중급 개발자에게 적당하다. 이 지침서를 읽고나서 당신은 의미있는 파이큐티5 응용프로그램을 만들수도 있을 것이다.

Table of contents
목차


'프로그래밍 > python' 카테고리의 다른 글

넘파이 행렬 인덱스 1  (0) 2017.06.20
python 버전 올리기  (0) 2017.02.07
PyQt5 1 Introduction  (0) 2017.02.03
Posted by 게 르 니 카
이전버튼 1 2 3 이전버튼

블로그 이미지
게 르 니 카

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함