#-*-coding:utf8 -*- // 원활한 한국어 지원을 위한 설정
myfile = open("python.txt", "w") // except.py 파일이 위치한 곳에서 python.txt라는 파일을 생성할 때 해당 파일을 쓸 수 있는 상태로(w권한을 줌) 생성하겠다는 뜻.
myfile.write("Hello python") // 쓰기가 가능한 python.txt 파일에다 Hello Python이라는 문자열을 쓰겠다는 뜻
myfile.flush() // 이전에 사용하고 남은 데이터를 모두 비우겠다는 뜻
myfile.close() // 파일 생성을 위해 할당한 자원을 모두 회수하겠다는 뜻. 파일 작업이 끝나면 반드시 이러한 과정을 거쳐야 한다.(w작업 끝남)
myfile=open("python.txt", "r") // python.txt 파일에 쓴 문자열을 읽어오겠다는 뜻.
mystirng=myfile.readline() // 한 줄 단위로 읽어들인 문자열을 메모리 공간에 올리겠다는 뜻.
myfile.close() // r 작업 끝남.
print(mystring) // mystring 변수가 가리키는 메모리 공간 위치에서 해당 문자열을 출력해주겠다는 뜻.
파이썬 언어는 객체지향언어이기 때문에 myfile 또는 mystring과 같은 변수는 엄밀하게 말해 일반 변수가 아닌 참조 변수다. 파이썬 언어에서 사용하는 변수는 해당 데이터를 저장하는 공간이 아니라 해당 데이터가 올라간 메모리 공간을 가리키는 용도(포인터랑 비슷한 듯)로 사용한다.
finger="moon"이 의미하는 바는 moon이란 문자열 데이터를 메모리 공간에 올린 뒤 finger라는 참조 변수로 하여금 moon이라는 문자열 데이터가 올라간 메모리 공간의 주소 번지를 가리키라는 것이다.
또한 python에서는 자바처럼 int finger 같이 자료형을 지정할 필요가 없는 동적 데이터 타입 할당을 지원한다.