산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> python

파이썬 - 파일 I/O

이전 페이지다음 페이지

이 장에서는 Python에서 사용할 수 있는 모든 기본 I/O 기능을 다룹니다. 더 많은 기능은 표준 Python 문서를 참조하십시오.

화면에 인쇄

출력을 생성하는 가장 간단한 방법은 print를 사용하는 것입니다. 쉼표로 구분된 0개 이상의 표현식을 전달할 수 있는 문. 이 함수는 전달한 표현식을 문자열로 변환하고 결과를 다음과 같이 표준 출력에 씁니다. -

라이브 데모
#!/usr/bin/python

print "Python is really a great language,", "isn't it?"

이것은 표준 화면에 다음 결과를 생성합니다 -

Python is really a great language, isn't it?

키보드 입력 읽기

파이썬은 기본적으로 키보드에서 오는 표준 입력에서 한 줄의 텍스트를 읽는 두 가지 내장 함수를 제공합니다. 이러한 기능은 -

raw_input 기능

raw_input([프롬프트]) 함수는 표준 입력에서 한 줄을 읽고 문자열로 반환합니다(후행 줄 바꿈 제거).

#!/usr/bin/python

str = raw_input("Enter your input: ")
print "Received input is : ", str

이것은 임의의 문자열을 입력하라는 메시지를 표시하고 화면에 동일한 문자열을 표시합니다. "Hello Python!"을 입력했을 때 출력은 다음과 같습니다. -

Enter your input: Hello Python
Received input is :  Hello Python

입력 기능

입력([프롬트]) 함수는 입력이 유효한 Python 표현식이라고 가정하고 평가된 결과를 사용자에게 반환한다는 점을 제외하고는 raw_input과 동일합니다.

#!/usr/bin/python

str = input("Enter your input: ")
print "Received input is : ", str

이것은 입력된 입력에 대해 다음 결과를 생성합니다 -

Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is :  [10, 20, 30, 40]

파일 열기 및 닫기

지금까지 표준 입력 및 출력을 읽고 썼습니다. 이제 실제 데이터 파일을 사용하는 방법을 알아보겠습니다.

Python은 기본적으로 파일을 조작하는 데 필요한 기본 기능과 메서드를 제공합니다. 파일을 사용하여 대부분의 파일 조작을 수행할 수 있습니다. 개체.

개방 기능

파일을 읽거나 쓰기 전에 Python의 내장 open()을 사용하여 파일을 열어야 합니다. 기능. 이 함수는 파일을 생성합니다. 개체와 관련된 다른 지원 메서드를 호출하는 데 사용됩니다.

구문

file object = open(file_name [, access_mode][, buffering])

다음은 매개변수 세부정보입니다 -

다음은 파일을 여는 다양한 모드의 목록입니다 -

시니어 번호 모드 및 설명
1

r

읽기 전용으로 파일을 엽니다. 파일 포인터는 파일의 시작 부분에 위치합니다. 기본 모드입니다.

2

rb

바이너리 형식으로만 읽기 위해 파일을 엽니다. 파일 포인터는 파일의 시작 부분에 위치합니다. 기본 모드입니다.

3

r+

읽기와 쓰기 모두를 위해 파일을 엽니다. 파일의 시작 부분에 위치한 파일 포인터.

4

rb+

이진 형식으로 읽고 쓸 수 있도록 파일을 엽니다. 파일의 시작 부분에 위치한 파일 포인터.

5

쓰기 전용으로 파일을 엽니다. 파일이 있는 경우 파일을 덮어씁니다. 파일이 존재하지 않을 경우 쓰기 위해 새로운 파일을 생성합니다.

6

wb

바이너리 형식으로만 쓰기 위해 파일을 엽니다. 파일이 있는 경우 파일을 덮어씁니다. 파일이 존재하지 않을 경우 쓰기 위해 새로운 파일을 생성합니다.

7

w+

쓰기와 읽기 모두를 위해 파일을 엽니다. 파일이 있는 경우 기존 파일을 덮어씁니다. 파일이 존재하지 않으면 읽고 쓸 수 있는 새 파일을 만듭니다.

8

wb+

이진 형식으로 쓰고 읽을 수 있도록 파일을 엽니다. 파일이 있는 경우 기존 파일을 덮어씁니다. 파일이 존재하지 않으면 읽고 쓸 수 있는 새 파일을 만듭니다.

9

추가할 파일을 엽니다. 파일이 존재하는 경우 파일 포인터는 파일 끝에 있습니다. 즉, 파일이 추가 모드에 있습니다. 파일이 존재하지 않을 경우 쓰기 위해 새로운 파일을 생성합니다.

10

ab

바이너리 형식으로 추가할 파일을 엽니다. 파일이 존재하는 경우 파일 포인터는 파일 끝에 있습니다. 즉, 파일이 추가 모드에 있습니다. 파일이 존재하지 않을 경우 쓰기 위해 새로운 파일을 생성합니다.

11

a+

추가 및 읽기 모두를 위해 파일을 엽니다. 파일이 존재하는 경우 파일 포인터는 파일 끝에 있습니다. 파일이 추가 모드에서 열립니다. 파일이 존재하지 않으면 읽고 쓸 수 있는 새 파일을 만듭니다.

12

ab+

이진 형식으로 추가하고 읽을 수 있도록 파일을 엽니다. 파일이 존재하는 경우 파일 포인터는 파일 끝에 있습니다. 파일이 추가 모드에서 열립니다. 파일이 존재하지 않으면 읽고 쓸 수 있는 새 파일을 만듭니다.

파일 개체 속성

파일이 열리고 하나의 파일이 있으면 해당 파일과 관련된 다양한 정보를 얻을 수 있습니다.

다음은 파일 객체와 관련된 모든 속성의 목록입니다 -

시니어 번호 속성 및 설명
1

파일.닫힘

파일이 닫혀 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다.

2

파일.모드

파일이 열린 액세스 모드를 반환합니다.

3

파일 이름

파일 이름을 반환합니다.

4

파일.소프트스페이스

인쇄에 공백이 명시적으로 필요한 경우 false를 반환하고 그렇지 않으면 true를 반환합니다.

예시

라이브 데모
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

이것은 다음 결과를 생성합니다 -

Name of the file:  foo.txt
Closed or not :  False
Opening mode :  wb
Softspace flag :  0

닫기() 방법

파일의 close() 메소드 개체는 기록되지 않은 정보를 모두 플러시하고 파일 개체를 닫습니다. 그 후에는 더 이상 쓰기를 수행할 수 없습니다.

파일의 참조 객체가 다른 파일에 재할당되면 Python은 자동으로 파일을 닫습니다. close() 메서드를 사용하여 파일을 닫는 것이 좋습니다.

구문

fileObject.close()

예시

라이브 데모
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

이것은 다음 결과를 생성합니다 -

Name of the file:  foo.txt

파일 읽기 및 쓰기

파일 객체는 우리의 삶을 더 쉽게 만드는 일련의 액세스 방법을 제공합니다. read()를 사용하는 방법을 살펴보겠습니다. 그리고 write() 파일을 읽고 쓰는 방법.

write() 방법

쓰기() 메서드는 열린 파일에 모든 문자열을 씁니다. 파이썬 문자열은 텍스트뿐만 아니라 바이너리 데이터도 가질 수 있다는 점에 유의하는 것이 중요합니다.

write() 메서드는 줄 바꿈 문자('\n')를 문자열 끝에 추가하지 않습니다. −

구문

fileObject.write(string)

여기서 전달된 매개변수는 열린 파일에 쓸 내용입니다.

예시

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

위의 방법은 foo.txt를 생성합니다. 파일을 만들고 해당 파일에 주어진 내용을 쓰고 마지막으로 해당 파일을 닫습니다. 이 파일을 열면 다음과 같은 내용이 있을 것입니다.

Python is a great language.
Yeah its great!!

read() 방법

읽기() 메서드는 열린 파일에서 문자열을 읽습니다. 파이썬 문자열은 바이너리 데이터를 가질 수 있다는 점에 유의하는 것이 중요합니다. 텍스트 데이터와는 별개입니다.

구문

fileObject.read([count])

여기서 전달된 매개변수는 열린 파일에서 읽을 바이트 수입니다. 이 메서드는 파일의 시작 부분부터 읽기 시작하고 count인 경우 없는 경우 파일 끝까지 가능한 한 많이 읽으려고 합니다.

예시

foo.txt 파일을 가져오자 , 위에서 만든 것입니다.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

이것은 다음 결과를 생성합니다 -

Read String is :  Python is

파일 위치

말() 메소드는 파일 내의 현재 위치를 알려줍니다. 즉, 다음 읽기 또는 쓰기는 파일 시작 부분부터 해당 바이트만큼 발생합니다.

seek(offset[, from]) 메서드는 현재 파일 위치를 변경합니다. 오프셋 인수는 이동할 바이트 수를 나타냅니다. 에서 인수는 바이트가 이동할 참조 위치를 지정합니다.

에서 0으로 설정하면 파일의 시작 부분을 기준 위치로, 1이면 현재 위치를 기준 위치로 사용하고 2로 설정하면 파일 끝을 기준 위치로 사용합니다.

예시

foo.txt 파일을 가져오도록 합시다. , 위에서 만든 것입니다.

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

이것은 다음 결과를 생성합니다 -

Read String is :  Python is
Current file position :  10
Again read String is :  Python is

파일 이름 변경 및 삭제

파이썬 os 모듈은 파일 이름 바꾸기 및 삭제와 같은 파일 처리 작업을 수행하는 데 도움이 되는 메서드를 제공합니다.

이 모듈을 사용하려면 먼저 모듈을 가져온 다음 관련 함수를 호출해야 합니다.

rename() 메소드

이름 바꾸기() 이 메서드는 현재 파일 이름과 새 파일 이름의 두 가지 인수를 사용합니다.

구문

os.rename(current_file_name, new_file_name)

예시

다음은 기존 파일 test1.txt의 이름을 바꾸는 예입니다. -

#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

remove() 방법

remove()를 사용할 수 있습니다. 삭제할 파일명을 인자로 주어 파일을 삭제하는 메소드.

구문

os.remove(file_name)

예시

다음은 기존 파일 test2.txt를 삭제하는 예입니다. -

#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

Python의 디렉토리

모든 파일은 다양한 디렉토리에 포함되어 있으며 Python은 이러한 디렉토리를 처리하는 데 문제가 없습니다. 운영체제 모듈에는 디렉토리를 생성, 제거 및 변경하는 데 도움이 되는 여러 메서드가 있습니다.

mkdir() 방법

mkdir()을 사용할 수 있습니다. os의 방법 현재 디렉토리에 디렉토리를 생성하는 모듈입니다. 생성할 디렉토리의 이름을 포함하는 이 메소드에 인수를 제공해야 합니다.

구문

os.mkdir("newdir")

예시

다음은 test 디렉토리를 생성하는 예입니다. 현재 디렉토리에서 -

#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

chdir() 방법

chdir()을 사용할 수 있습니다. 현재 디렉토리를 변경하는 메소드. chdir() 메소드는 현재 디렉토리를 만들고자 하는 디렉토리의 이름인 인수를 취합니다.

구문

os.chdir("newdir")

예시

다음은 "/home/newdir" 디렉토리로 이동하는 예입니다 -

#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

getcwd() 방법

getcwd() 메소드는 현재 작업 디렉토리를 표시합니다.

구문

os.getcwd()

예시

다음은 현재 디렉토리를 제공하는 예입니다 -

#!/usr/bin/python
import os

# This would give location of the current directory
os.getcwd()

rmdir() 방법

rmdir() 메소드는 메소드에서 인수로 전달된 디렉토리를 삭제합니다.

디렉토리를 제거하기 전에 그 안에 있는 모든 내용을 제거해야 합니다.

구문

os.rmdir('dirname')

예시

다음은 "/tmp/test" 디렉토리를 제거하는 예이다. 디렉토리의 완전한 이름을 제공해야 합니다. 그렇지 않으면 현재 디렉토리에서 해당 디렉토리를 검색합니다.

#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

파일 및 디렉토리 관련 방법

Windows 및 Unix 운영 체제에서 파일 및 디렉토리를 처리하고 조작하는 광범위한 유틸리티 방법을 제공하는 세 가지 중요한 소스가 있습니다. 그것들은 다음과 같습니다 -


python

  1. C 입력 출력(I/O)
  2. C 파일 처리
  3. 파이썬 입력, 출력 및 가져오기
  4. 파이썬 파일 I/O
  5. Python 디렉토리 및 파일 관리
  6. Python 파일 존재 여부 확인 | 파이썬에서 디렉토리가 존재하는지 확인하는 방법
  7. C - 파일 I/O
  8. C - 헤더 파일
  9. C++ 파일 및 스트림
  10. C# - 파일 I/O