IT이야기

문자열 변수로 텍스트 파일을 읽고 새 줄을 분리하는 방법

cyworld 2022. 3. 9. 10:00
반응형

문자열 변수로 텍스트 파일을 읽고 새 줄을 분리하는 방법

다음 코드 세그먼트를 사용하여 python으로 된 파일을 읽는다.

with open ("data.txt", "r") as myfile:
    data=myfile.readlines()

입력 파일:

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE

그리고 내가 데이터를 인쇄할 때 나는

['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN\n', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE']

데이터가 있는 것으로 확인됨list직렬. 끈은 어떻게 만드니?그리고 어떻게 제거해야 하는가?"\n""["그리고"]"거기에 나오는 인물들?

사용 가능한 항목:

with open('data.txt', 'r') as file:
    data = file.read().replace('\n', '')

또는 파일 콘텐츠가 한 줄로 보장되는 경우

with open('data.txt', 'r') as file:
    data = file.read().rstrip()

Python 3.5 이상에서는 pathlib를 사용하여 텍스트 파일 내용을 변수에 복사하고 파일을 한 줄로 닫을 수 있다.

from pathlib import Path
txt = Path('data.txt').read_text()

str.propert를 사용하여 새 줄을 제거하십시오.

txt = txt.replace('\n', '')

파일에서 한 줄로 읽을 수 있다.

str = open('very_Important.txt', 'r').read()

이렇게 하면 파일이 명시적으로 닫히지 않는다는 점에 유의하십시오.

CPython은 파일이 가비지 수집의 일부로 종료될 때 파일을 닫는다.

그러나 다른 비단뱀 구현은 그렇지 않을 것이다.휴대용 코드를 쓰려면 사용하는 것이 좋다.with또는 파일을 명시적으로 닫으십시오.키가 작다고 항상 좋은 것은 아니다.https://stackoverflow.com/a/7396043/362951을 참조하십시오.

모든 줄을 문자열로 결합하고 새 줄을 제거하려면 일반적으로 다음을 사용하십시오.

with open('t.txt') as f:
  s = " ".join([l.rstrip() for l in f]) 
with open("data.txt") as myfile:
    data="".join(line.rstrip() for line in myfile)

joinstrip은 문자열 리스트에 가입할 것이고, rstriprip은 새로운 줄을 포함한 공백을 줄의 끝에서부터 자를 것이다.

이 작업은 읽기() 방법을 사용하여 수행할 수 있다.

text_as_string = open('Your_Text_File.txt', 'r').read()

또는 기본 모드 자체가 'r'(읽기)이기 때문에 간단히 사용할 수 있으며,

text_as_string = open('Your_Text_File.txt').read()

아무도 언급하지 않은 것이 놀랍다.splitlines()아직까지는

with open ("data.txt", "r") as myfile:
    data = myfile.read().splitlines()

수식data이제 인쇄할 때 다음과 같은 목록이 표시됨:

['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE']

새로운 라인이 없다는 점에 유의하십시오.\n).

이 시점에서, 당신은 콘솔로 다시 선을 인쇄하고 싶은 것처럼 들리는데, 당신은 이것을 for loop으로 달성할 수 있다.

for line in data:
    print(line)

나는 한동안 이것을 만지작거렸고 사용하는 것을 선호했다.read rstrip는 .rstrip("\n"), Python은 문자열 끝에 새로운 줄을 추가하는데, 대부분의 경우 그다지 유용하지 않다.

with open("myfile.txt") as f:
    file_content = f.read().rstrip("\n")
    print(file_content)

정확히 무엇을 쫓고 있는지 말하기는 어렵지만, 이와 같은 것이 당신을 시작하게 할 것이다.

with open ("data.txt", "r") as myfile:
    data = ' '.join([line.replace('\n', '') for line in myfile.readlines()])

이것을 두 줄의 코드로 압축할 수 있다!!!

content = open('filepath','r').read().replace('\n',' ')
print(content)

파일 읽기:

hello how are you?
who are you?
blank blank

비단뱀 생산량

hello how are you? who are you? blank blank

당신은 또한 각 선을 벗겨내고 마지막 끈으로 연결시킬 수 있다.

myfile = open("data.txt","r")
data = ""
lines = myfile.readlines()
for line in lines:
    data = data + line.strip();

이것은 또한 아주 잘 풀릴 것이다.

파일 개체를 닫는 복사 붙여넣기 방식의 단일 줄 솔루션:

_ = open('data.txt', 'r'); data = _.read(); _.close()

python3: 사각 괄호 구문이 처음인 경우 Google "list underst underst underst underst und

 with open('data.txt') as f:
     lines = [ line.strip('\n') for line in list(f) ]

Oneliner:

  • 목록:"".join([line.rstrip('\n') for line in open('file.txt')])

  • 제너레이터:"".join((line.rstrip('\n') for line in open('file.txt')))

목록은 발전기보다 빠르지만 기억력은 더 무겁다.생성기는 목록보다 느리고 회선을 반복하는 것처럼 메모리의 경우 가볍다.".join()의 경우 둘 다 잘 작동해야 한다고 생각한다. .join()함수를 제거하여 목록이나 생성기를 각각 얻어야 한다.

  • 참고: () 닫기 / 파일 설명자 닫기가 필요하지 않을 수 있음

이거 먹어봤어?

x = "yourfilename.txt"
y = open(x, 'r').read()

print(y)

Python을 사용하여 줄 바꿈을 제거하려면replace현의 기능

이 예에서는 다음 세 가지 유형의 줄 바꿈을 모두 제거한다.

my_string = open('lala.json').read()
print(my_string)

my_string = my_string.replace("\r","").replace("\n","")
print(my_string)

예제 파일:

{
  "lala": "lulu",
  "foo": "bar"
}

다음 재생 시나리오를 사용해 보십시오.

https://repl.it/repls/AnnualJointHardware

여기에 이미지 설명을 입력하십시오.

f = open('data.txt','r')
string = ""
while 1:
    line = f.readline()
    if not line:break
    string += line

f.close()


print(string)

나는 아무도 너의 질문의 [ ] 부분을 언급했다고 생각하지 않는다.\n을 ''로 바꾸기 전에는 여러 줄이 있었기 때문에 각 행을 변수에서 읽을 때 결국 목록을 생성하게 된다.x의 변수가 있으면 바로 출력해서

x

또는 인쇄(x)

또는 str(x)

당신은 전체 목록을 괄호로 묶어서 볼 수 있을 것이다.각 요소(정렬 배열)를 호출하는 경우

x[0] 그러면 괄호를 생략한다.str() 함수를 사용하면 '' str(x[0])도 아니고 데이터만 볼 수 있다.

이거 한 번 먹어볼래?나는 이것을 내 프로그램에서 사용한다.

Data= open ('data.txt', 'r')
data = Data.readlines()
for i in range(len(data)):
    data[i] = data[i].strip()+ ' '
data = ''.join(data).strip()

정규 표현식도 사용할 수 있음:

import re
with open("depression.txt") as f:
     l = re.split(' ', re.sub('\n',' ', f.read()))[:-1]

print (l)

['I', 'feel', 'empty', 'and', 'dead', 'inside']

with open('data.txt', 'r') as file:
    data = [line.strip('\n') for line in file.readlines()]
    data = ''.join(data)

다음 작업: 파일을 다음으로 변경:

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE

다음:

file = open("file.txt")
line = file.read()
words = line.split()

이렇게 하면 이름이 지정된 목록이 생성됨words이는 다음과 같다.

['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE']

그것 때문에 "\n"이 없어졌다.브래킷이 방해가 되는 부분에 대해 답변하려면 다음을 수행하십시오.

for word in words: # Assuming words is the list above
    print word # Prints each word in file on a different line

또는:

print words[0] + ",", words[1] # Note that the "+" symbol indicates no spaces
#The comma not in parentheses indicates a space

반환되는 항목:

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN, GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE
with open(player_name, 'r') as myfile:
 data=myfile.readline()
 list=data.split(" ")
 word=list[0]

이 코드는 당신이 첫 번째 줄을 읽고 나서 목록과 분할 옵션을 사용하여 당신은 리스트에 저장될 공백으로 분리된 첫 번째 줄 단어를 변환할 수 있다.

어떤 단어에 쉽게 접근할 수 있거나, 심지어 줄에 저장할 수도 있다.

당신은 또한 포루프를 사용해도 같은 일을 할 수 있다.

file = open("myfile.txt", "r")
lines = file.readlines()
str = ''                                     #string declaration

for i in range(len(lines)):
    str += lines[i].rstrip('\n') + ' '

print str

다음을 시도해 보십시오.

with open('data.txt', 'r') as myfile:
    data = myfile.read()

    sentences = data.split('\\n')
    for sentence in sentences:
        print(sentence)

주의:이 기능을 제거하지 않는다.\n. 마치 없는 것처럼 본문을 보기 위한 것이다.\n

참조URL: https://stackoverflow.com/questions/8369219/how-to-read-a-text-file-into-a-string-variable-and-strip-newlines

반응형