Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Tôi có một tệp văn bản trông giống như:

ABC
DEF

Làm thế nào tôi có thể đọc tệp vào một chuỗi một dòng mà không có newlines, trong trường hợp này tạo ra một chuỗi

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


Để đọc tệp vào một danh sách các dòng, nhưng xóa ký tự dòng mới ra khỏi mỗi dòng, xem cách đọc một tệp mà không có newlines ?.

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Karl Knechtel

59.5K10 Huy hiệu vàng86 Huy hiệu bạc133 Huy hiệu Đồng10 gold badges86 silver badges133 bronze badges

Đã hỏi ngày 3 tháng 12 năm 2011 lúc 16:47Dec 3, 2011 at 16:47

6

Bạn đã có thể sử dụng:

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

Hoặc nếu nội dung tệp được đảm bảo là một dòng

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

OneCricketeer

164K18 Huy hiệu vàng122 Huy hiệu bạc226 Huy hiệu Đồng18 gold badges122 silver badges226 bronze badges

Đã trả lời ngày 3 tháng 12 năm 2011 lúc 17:06Dec 3, 2011 at 17:06

mất ngủSleeplessnerdsleeplessnerd

Huy hiệu vàng 21K11 gold badge24 silver badges29 bronze badges

14

Trong Python 3.5 trở lên, sử dụng PathLib, bạn có thể sao chép nội dung tệp văn bản vào một biến và đóng tệp trong một dòng:

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

Và sau đó bạn có thể sử dụng str.replace để loại bỏ các dòng mới:

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

Đã trả lời ngày 29 tháng 3 năm 2018 lúc 20:26Mar 29, 2018 at 20:26

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

3

Bạn có thể đọc từ một tệp trong một dòng:

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

Xin lưu ý rằng điều này không đóng tệp một cách rõ ràng.

CPython sẽ đóng tệp khi nó thoát ra như một phần của bộ sưu tập rác.

Nhưng các triển khai Python khác sẽ không. Để viết mã di động, tốt hơn là sử dụng

txt = txt.replace('\n', '')
2 hoặc đóng tệp một cách rõ ràng. Ngắn không phải lúc nào cũng tốt hơn. Xem https://stackoverflow.com/a/7396043/362951

MIT

10,9k10 Huy hiệu vàng48 Huy hiệu bạc74 Huy hiệu đồng10 gold badges48 silver badges74 bronze badges

Đã trả lời ngày 3 tháng 12 năm 2015 lúc 2:52Dec 3, 2015 at 2:52

Nafis Ahmadnafis AhmadNafis Ahmad

2.6292 Huy hiệu vàng26 Huy hiệu bạc13 Huy hiệu Đồng2 gold badges26 silver badges13 bronze badges

5

Để tham gia tất cả các dòng vào một chuỗi và xóa các dòng mới, tôi thường sử dụng:

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

Đã trả lời ngày 21 tháng 3 năm 2015 lúc 3:10Mar 21, 2015 at 3:10

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Pedro lobitopedro lobitoPedro Lobito

89.5K30 Huy hiệu vàng239 Huy hiệu bạc259 Huy hiệu Đồng30 gold badges239 silver badges259 bronze badges

5

with open("data.txt") as myfile:
    data="".join(line.rstrip() for line in myfile)

tham gia () sẽ tham gia một danh sách các chuỗi và rstrip () không có lập luận nào sẽ cắt giảm khoảng trắng, bao gồm cả dòng mới, từ cuối chuỗi.

Đã trả lời ngày 3 tháng 12 năm 2011 lúc 16:55Dec 3, 2011 at 16:55

MagerValPmagervalpMagerValp

2.8321 Huy hiệu vàng23 Huy hiệu bạc27 Huy hiệu đồng1 gold badge23 silver badges27 bronze badges

0

Điều này có thể được thực hiện bằng phương thức Read ():

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

Hoặc vì bản thân chế độ mặc định là 'r' (đọc) vì vậy chỉ cần sử dụng,

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

Đã trả lời ngày 16 tháng 11 năm 2018 lúc 7:16Nov 16, 2018 at 7:16

LoochieloochieLoochie

2.26411 Huy hiệu bạc20 Huy hiệu đồng11 silver badges20 bronze badges

1

Tôi ngạc nhiên chưa có ai đề cập đến

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

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

Biến

txt = txt.replace('\n', '')
4 hiện là một danh sách trông như thế này khi được in:

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

Lưu ý không có Newlines (

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

Tại thời điểm đó, có vẻ như bạn muốn in lại các dòng vào bảng điều khiển mà bạn có thể đạt được bằng một vòng lặp:

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

Gelonida

5.0472 Huy hiệu vàng21 Huy hiệu bạc38 Huy hiệu đồng2 gold badges21 silver badges38 bronze badges

Đã trả lời ngày 8 tháng 2 năm 2018 lúc 11:59Feb 8, 2018 at 11:59

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

JulianjulianJulian

3.6824 Huy hiệu vàng19 Huy hiệu bạc27 Huy hiệu đồng4 gold badges19 silver badges27 bronze badges

1

Tôi đã loay hoay với điều này trong một thời gian và thích sử dụng

txt = txt.replace('\n', '')
6 kết hợp với
txt = txt.replace('\n', '')
7. Không có
txt = txt.replace('\n', '')
8, Python thêm một dòng mới vào cuối chuỗi, trong hầu hết các trường hợp không hữu ích lắm.

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

Gelonida

5.0472 Huy hiệu vàng21 Huy hiệu bạc38 Huy hiệu đồng2 gold badges21 silver badges38 bronze badges

Đã trả lời ngày 8 tháng 2 năm 2018 lúc 11:59Apr 28, 2017 at 7:46

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Julianjulianwhirlwin

3.6824 Huy hiệu vàng19 Huy hiệu bạc27 Huy hiệu đồng17 gold badges68 silver badges97 bronze badges

Tôi đã loay hoay với điều này trong một thời gian và thích sử dụng

txt = txt.replace('\n', '')
6 kết hợp với
txt = txt.replace('\n', '')
7. Không có
txt = txt.replace('\n', '')
8, Python thêm một dòng mới vào cuối chuỗi, trong hầu hết các trường hợp không hữu ích lắm.

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

Đã trả lời ngày 28 tháng 4 năm 2017 lúc 7:46Dec 3, 2011 at 16:51

WhirlwinwhirlwinChris Eberle

15.6K17 Huy hiệu vàng68 Huy hiệu bạc97 Huy hiệu đồng12 gold badges81 silver badges118 bronze badges

3

Thật khó để nói chính xác những gì bạn đang theo đuổi, nhưng một cái gì đó như thế này sẽ giúp bạn bắt đầu:

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

Đã trả lời ngày 3 tháng 12 năm 2011 lúc 16:51Mar 31 at 13:40

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Chris Eberlechris EberleMy Car

47.4K12 Huy hiệu vàng81 Huy hiệu bạc118 Huy hiệu đồng3 gold badges11 silver badges37 bronze badges

Hãy thử mã sau:

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

Đã trả lời ngày 31 tháng 3 lúc 13:40

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

Xe Carmy của tôi

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

2.2023 huy hiệu vàng11 Huy hiệu bạc37 Huy hiệu đồngJul 30, 2018 at 20:34

1

Bạn có thể nén nó thành một thành hai dòng mã !!!

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

Nếu tệp của bạn có nội dung:

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Đầu ra Python

Đã trả lời ngày 30 tháng 7 năm 2018 lúc 20:341 gold badge7 silver badges13 bronze badges

Bạn cũng có thể tước từng dòng và nối vào một chuỗi cuối cùng.Apr 26, 2015 at 5:57

2

Điều này cũng sẽ hoạt động tốt.

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

OrionmdAug 23, 2018 at 15:33

3191 Huy hiệu vàng7 Huy hiệu bạc13 Huy hiệu đồngEdward D'Souza

Đã trả lời ngày 26 tháng 4 năm 2015 lúc 5:571 gold badge24 silver badges23 bronze badges

1

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

Gelonida

5.0472 Huy hiệu vàng21 Huy hiệu bạc38 Huy hiệu đồng2 gold badges21 silver badges38 bronze badges

Đã trả lời ngày 8 tháng 2 năm 2018 lúc 11:59Dec 3, 2011 at 16:49

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Julianjulianhungneox

3.6824 Huy hiệu vàng19 Huy hiệu bạc27 Huy hiệu đồng11 gold badges48 silver badges65 bronze badges

3

Tôi đã loay hoay với điều này trong một thời gian và thích sử dụng

txt = txt.replace('\n', '')
6 kết hợp với
txt = txt.replace('\n', '')
7. Không có
txt = txt.replace('\n', '')
8, Python thêm một dòng mới vào cuối chuỗi, trong hầu hết các trường hợp không hữu ích lắm.

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

Đã trả lời ngày 28 tháng 4 năm 2017 lúc 7:46Nov 16, 2016 at 13:04

Whirlwinwhirlwingerardw

15.6K17 Huy hiệu vàng68 Huy hiệu bạc97 Huy hiệu đồng43 silver badges38 bronze badges

3

Oneliner:

  • Thật khó để nói chính xác những gì bạn đang theo đuổi, nhưng một cái gì đó như thế này sẽ giúp bạn bắt đầu:

  • Đã trả lời ngày 3 tháng 12 năm 2011 lúc 16:51

Chris Eberlechris Eberle

  • 47.4K12 Huy hiệu vàng81 Huy hiệu bạc118 Huy hiệu đồng

Hãy thử mã sau:Aug 28, 2021 at 8:38

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Đã trả lời ngày 31 tháng 3 lúc 13:40Machinexa

Xe Carmy của tôi1 gold badge6 silver badges15 bronze badges

Bạn đã thử cái này chưa?

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

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Ali

1.3572 Huy hiệu vàng12 Huy hiệu bạc18 Huy hiệu đồng2 gold badges12 silver badges18 bronze badges

Đã trả lời ngày 16 tháng 11 năm 2017 lúc 17:41Nov 16, 2017 at 17:41

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

1

Để loại bỏ các lần ngắt dòng bằng Python, bạn có thể sử dụng hàm

str = open('very_Important.txt', 'r').read()
1 của chuỗi.

Ví dụ này loại bỏ tất cả 3 loại ngắt dòng:

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

Tệp ví dụ là:

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

Bạn có thể thử nó bằng cách sử dụng kịch bản phát lại này:

https://repl.it/repls/AnnualJointHardware

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Đã trả lời ngày 31 tháng 10 năm 2019 lúc 19:12Oct 31, 2019 at 19:12

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Sma Masma MaSma Ma

2.9631 Huy hiệu vàng29 Huy hiệu bạc38 Huy hiệu đồng1 gold badge29 silver badges38 bronze badges

Tôi không cảm thấy rằng bất cứ ai đã giải quyết phần [] câu hỏi của bạn. Khi bạn đọc từng dòng vào biến của mình, vì có nhiều dòng trước khi bạn thay thế \ n bằng '' bạn đã kết thúc việc tạo một danh sách. Nếu bạn có một biến của x và in nó ra chỉ bằng cách

x

hoặc in (x)

hoặc str (x)

Bạn sẽ thấy toàn bộ danh sách với dấu ngoặc. Nếu bạn gọi từng phần tử của (mảng của các loại)

x [0] sau đó nó bỏ qua dấu ngoặc. Nếu bạn sử dụng hàm str (), bạn sẽ chỉ thấy dữ liệu chứ không phải ''. str (x [0])

Đã trả lời ngày 6 tháng 3 năm 2015 lúc 20:16Mar 6, 2015 at 20:16

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

Có lẽ bạn có thể thử cái này? Tôi sử dụng điều này trong các chương trình của tôi.

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

Đã trả lời ngày 3 tháng 7 năm 2019 lúc 20:33Jul 3, 2019 at 20:33

Biểu thức thông thường cũng hoạt động:

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

['Tôi', 'cảm nhận', 'trống', 'và', 'chết', 'bên trong']]

Đã trả lời ngày 13 tháng 8 năm 2019 lúc 13:08Aug 13, 2019 at 13:08

AlexalexAlex

9444 Huy hiệu vàng14 Huy hiệu bạc28 Huy hiệu đồng4 gold badges14 silver badges28 bronze badges

0

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

Đã trả lời ngày 27 tháng 7 năm 2021 lúc 9:32Jul 27, 2021 at 9:32

Hướng dẫn how do i read a text file into a string in python? - làm cách nào để đọc tệp văn bản thành một chuỗi trong python?

0

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

Là cách tốt nhất để có được tất cả các dòng của một tệp, '\ n' đã bị tước bởi

txt = txt.replace('\n', '')
3 (thông minh nhận ra các loại dòng Win/Mac/Unix).

Nhưng dù sao bạn cũng muốn tước từng dòng:

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

str = open('very_Important.txt', 'r').read()
3 chỉ là một ví dụ hữu ích, nhưng bạn có thể xử lý dòng của mình theo cách bạn muốn.

Cuối cùng, bạn chỉ muốn kết nối văn bản?

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

Đã trả lời ngày 26 tháng 3 lúc 19:31Mar 26 at 19:31

Yotayotayota

1.92021 huy hiệu bạc35 huy hiệu đồng21 silver badges35 bronze badges

Điều này hoạt động: Thay đổi tệp của bạn thành:

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

Then:

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

Điều này tạo ra một danh sách có tên

str = open('very_Important.txt', 'r').read()
4 bằng:

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

Điều đó đã loại bỏ "\ n". Để trả lời phần về dấu ngoặc cản đường của bạn, chỉ cần làm điều này:

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

Or:

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

Điều này trả về:

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

Đã trả lời ngày 20 tháng 5 năm 2015 lúc 18:34May 20, 2015 at 18:34

PyguypyguyPyGuy

433 huy hiệu đồng3 bronze badges

1

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

Mã này sẽ giúp bạn đọc dòng đầu tiên và sau đó sử dụng tùy chọn danh sách và phân chia Bạn có thể chuyển đổi từ dòng đầu tiên được phân tách bằng không gian để được lưu trữ trong danh sách.

Hơn bạn có thể dễ dàng truy cập bất kỳ từ nào, hoặc thậm chí lưu trữ nó trong một chuỗi.

Bạn cũng có thể làm điều tương tự với việc sử dụng một vòng lặp.

Đã trả lời ngày 23 tháng 1 năm 2016 lúc 10:26Jan 23, 2016 at 10:26

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

Đã trả lời ngày 13 tháng 6 năm 2016 lúc 8:53Jun 13, 2016 at 8:53

AkdakdakD

1.0371 Huy hiệu vàng10 Huy hiệu bạc15 Huy hiệu đồng1 gold badge10 silver badges15 bronze badges

0

Hãy thử những điều sau:

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

THẬN TRỌNG: Nó không loại bỏ

txt = txt.replace('\n', '')
5. Nó chỉ là để xem văn bản như thể không có
txt = txt.replace('\n', '')
5

Đã trả lời ngày 6 tháng 12 năm 2019 lúc 6:25Dec 6, 2019 at 6:25

Palak Jainpalak JainPalak Jain

6246 Huy hiệu bạc18 Huy hiệu Đồng6 silver badges18 bronze badges

0