문화생활-0- 2021. 10. 31. 16:24

[영화] 듄

고전 명작이지만 읽어보진 않은 듄을 원작으로 하는 영화라서

기대는 안하고 가서 봤는데 진짜

sf영화의 반지의 제왕

 

2~3부작 내용의 첫편이라 지루해 질수도 있는데 

조금만 지루해질거 같으면 한스짐머의 웅장한 음악이 머리를 흔들어준다 ㅋㅋ

 

취향 안맞으면 재미 없을게 확실한 영화지만

영상과 음악만으로도 대작이라는데 이견은 없을듯.

 

덤으로 보호막설정이랑 모래벌레 디자인이 너무 맘에 들었음 ㅋㅋㅋ

특히 모래벌레는 벌레면서 자연재해 그리고 눈동자 같은 디자인이라 좋았슴

 

바로 소설책 구입

공부/파이썬 2021. 10. 31. 16:18

20211031 점프 투 파이썬 - 05-3

05-3

패키지

도트(.) 를 사용해서 디렉터리와 모듈을 간략하게(???) 사용하는 방법

import 관련 알아야 할것

도트(.)의 마지막은 모듈이어야 한다.

import a.b.c 에서 c는 함수가 될 수 없다는거.

 

__init__.py 파일은 해당 디렉터리가 패키지의 일부임을 알려주는 파일이지만 파이선3.3 부터는 없어도 인식된다.

하위버젼 호환을 위해 만들어두자.

 

__init__.py 파일에 

__all__ 변수를 사용해서 import * 할때 import 되는 모듈을 지정해놓을 수 있다.

__all__ = ['모듈명1']

 

form 디렉터리1.디렉터리2 import *

모듈명1.함수1 #이렇게 모듈명1 사용 가능

 

from ..디렉터리1.디렉터리2.모듈명 import 함수명

이렇게 하면 디렉터리1 의 앞에 있는 ".." 이 상대 경로의 부모 디렉터리를 의미한다. "."하나만 쓰면 자기 자신.

상대경로 사용시엔 모듈 안에서만 사용해야한다.

 

이거 파이썬으로 할 일의 범위가 늘어나고 프로젝트 작업인원이 늘어나면

꼭 알아야할 사용법들인듯

공부/파이썬 2021. 10. 24. 15:56

20211024 점프 투 파이썬 - 05-2 모듈

05-2 모듈 

요거도 사실 별거 없다.

대화형 인터프리터로 작성한게 아니라 

py 파일로 작성한 파이썬 코드를 다른 파일에서 사용할수 있는 방법

 

#모듈이름은 미리 작성한 py파일에서 확장자인 .py를 제거하고 쓴다.

import  모듈이름

#모듈이름 뒤에 .을 붙이면 특정 함수만 가져온다?

#mod.py에 있는 testShow 함수를 가져오고 싶다면 

import mod.testShow

#. 안쓰고 특정 함수만 가져다 쓰고 싶으면

from 모듈이름 import 모듈의함수이름

#mod1.py 파일에 있는 add랑 sub라는 함수를 가져다 쓰고 싶으면

from mod1 import add, sub

#mod2.py  파일에 있는 모든 함수를 가져다 쓰고 싶으면

from mod2 import *

 

import 시 문제점중 하나가

해당 py 파일에 작성한 모든 코드가 import // c로 얘기하면 include 되는거랑 같다.

import 한 코드가 원래의 py파일에서 실행된건지 아닌지 구분해서 실행하는 방법

if __name__ == "__main__" :

으로 __name__이란 파이썬 내부에서 사용하는 변수를 검사하면

현재 실행된 파일이 import 된건지 원래의 코드인지 알 수 있다.

 

물론 import 로 모듈을 불러온 경우 함수만이 아니라 변수나 클래스도 사용 가능하다.

 

파일 import 는 기본적으로 같은 디랙토리 내에서 가능하지만 os환경변수를 사용해서 path를 설정하거나

import sys 를 통해 파이썬이 설치, 연관 되어 있는 디렉토리를 한번에 설정하고 import 할 수도 있다

import sys

import mod

이런식.

공부/파이썬 2021. 10. 11. 16:52

20211011 점프 투 파이썬 - 05-1클래스

05-1 클래스

이건 별거 없다. 그냥 C++에서의 클래스랑 비슷

클래스란건 결국 변수저장+전용함수 가 합쳐진 개체의 틀

 

class 클래스명 :

    def 함수명( 변수1, 변수2, 변수3...) :

        함수내용

        함수내용

    def __init__(변수1) : #클래스 초기화 함수는 이름 고정

        초기화 함수

 

함수명에서 첫 변수1 은 자기자신을 의미한다.

 

class test_class :

    def test_func( self, bbb ) :

        self.aaa = bbb

    def test_func_2(self) :

        print(self.aaa)

a = test_class()

b = test_class()

a.test_func( 20 )

b.test_func( 30 )

a.test_func_2()

b.test_func_2()

#20

#30

 

상속이나 매서드 오버라이딩은 그냥 쓰면 된다

 

class 부모클래스 :

    내용1

class 자식클래스(부모클래스):

    내용2

 

클래스 변수는 클래스 자체에서 공용으로 쓰는 변수

클래스 변수도 공용으로 쓰다가 개별로 쓰면 개별 영역이 됩니다

class AAA :

    gBBB = 10000

a = AAA()

b = AAA()

print(a.gBBB, b.gBBB)

AAA.gBBB = 10

print(a.gBBB, b.gBBB)

a,gBBB = 100

print(a.gBBB, b.gBBB)

 

# 10000 10000

# 10 10

# 100 10

공부/파이썬 2021. 10. 4. 14:01

20211004 점프 투 파이썬

04-2 사용자 입력과 출력

 

#input 콘솔 입력

# num2 는 input 내 스트링 출력 후 프롬프트 표시

num = input()

num2 = input("숫자를 입력하시오 : ")

 

#print 용법 추가 큰따옴표

#띄어쓰기는 콤마로

#print 시 맨뒤에 자동으로 붙는 줄바꿈은 end = "스트링" 으로 변경가능

print( "aa" "bb" "cc")

print( "aa", "bb", "cc")

print( "aa" , end= "--")

print( "bb" , end= "--")

# aabbcc

# aa bb cc

# aa--bb--

 

04-3 파일 읽고 쓰기

 

#기본순서는 (새로 생성하거나 기존의) 파일을 열고, 파일에 읽거나 쓰고, 파일을 닫는다.

#open 옵션은 'w' - 쓰기만, 'r' - 읽기만, 'a' - 기존파일의 맨뒤에 추가

#새로 파일이 생성되더라도 파일 경로를 생성해 주진 않는다.

f = open("드라이브경로/경로/경로.../파일명.확장자", 'w')

f.close()

 

#파일에 내용 쓰기, 읽기 1

# write, readline 한줄씩 읽기 #문제는 줄바꿈 문자까지 포함해서 읽는다.
file_test = open("c:/python/file/새파일.txt", 'w') #경로 생성은 안한다.
for i in range(3):
    data = "%d 번째 줄입니다.\n" % i
    file_test.write( data )
file_test.close()
file_r = open("c:/python/file/새파일.txt", 'r')
while True:
    line = file_r.readline()
    if not line : break    # 무한루프로 돌면서 더이상 읽을 라인이 없으면 break로 루프 탈출
    print(line , end=" ")
file_r.close()
#0 번째 줄입니다.
#1 번째 줄입니다.
#2 번째 줄입니다.

 

#파일에 내용 쓰기, 읽기2

# writelines, readlines 리스트 통째로 쓰고 읽을때도 리스트에 한번에 넣기

file_test = open("c:/python/file/새파일.txt", 'w') #경로 생성은 안한다.
data_lines = ["0번째 줄입니다.\n","1번째 줄입니다.\n","2번째 줄입니다.\n"]
file_test.writelines( data )
file_test.close()
file_r = open("c:/python/file/새파일.txt", 'r')
lines = file_r.readlines()
for line in lines  :
    print( line , end="   a ")
file_r.close()
#0 번째 줄입니다.
#  a 1 번째 줄입니다.
#  a 2 번째 줄입니다.
#  a

 

#파일에 내용 쓰기, 읽기3

# read 파일 통째로 읽기.

# with as 문을 사용하면 with 블록을 벗어나는 순간 자동으로 파일변수가 close 된다


file_r = open("c:/python/file/새파일.txt", 'r')
data = file_r.read()
print( data )
file_r.close()
#####################################
with open("c:/python/file/새파일.txt", 'r') as file_r:
    data = file_r.read()
    print( data )

#위의 두 문단은 거의 동일한 결과 출력

 

#완전 번외

#sys 모듈을 사용해서 python 파일명.py 에 매개 변수 추가하기

import sys
args = sys.argv[1:]
for i in args:
    print(i)

# python 파일명.py aa bb cc dd
# aa
# bb
# cc