Hướng dẫn remove character from text file python – xóa ký tự khỏi tệp văn bản python

Tôi có một bộ số (NDC – số thuốc) có

1. 8290-033010

2 trong đó. Tôi đang cố gắng đọc tệp, xóa

1. 8290-033010

2 và ghi các số vào một tệp mới. Bất kỳ sự giúp đỡ với điều này sẽ được đánh giá cao. Sử dụng PY 2.7

1. 68817-0134-50
2. 68817-0134-50
3. 68817-0134-50

Vấn đề là dấu gạch nối không phải lúc nào cũng ở cùng một vị trí.

1. 8290-033010

Nó thay đổi và có thể ở bất kỳ vị trí nào

with open('c:\NDCHypen.txt', 'r') as infile,
     open('c:\NDCOnly.txt', 'w') as outfile:
    replace("-", "")

Hỏi ngày 5 tháng 10 năm 2013 lúc 19:03Oct 5, 2013 at 19:03

Hướng dẫn remove character from text file python - xóa ký tự khỏi tệp văn bản python

1

with open(r'c:\NDCHypen.txt', 'r') as infile, \
     open(r'c:\NDCOnly.txt', 'w') as outfile:
    data = infile.read()
    data = data.replace("-", "")
    outfile.write(data)

Để ngăn chặn việc chuyển đổi các kết thúc dòng (ví dụ: giữa

1. 8290-033010

4 và

1. 8290-033010

5), hãy mở cả hai tệp ở chế độ nhị phân: Pass

1. 8290-033010

6 hoặc

1. 8290-033010

7 dưới dạng arg 2 của Open.

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 19:08Oct 5, 2013 at
19:08

ptsptspts

74.5K19 Huy hiệu vàng102 Huy hiệu bạc174 Huy hiệu đồng19 gold badges102 silver badges174 bronze badges

3

Bạn có thể làm điều đó một cách dễ dàng với một kịch bản shell sẽ phải nhanh hơn so với việc triển khai Python. Trừ khi bạn có một cái gì đó nhiều hơn với tập lệnh, bạn nên đi với phiên bản script shell.

Tuy nhiên, với Python sẽ là:

with open('c:\NDCHypen.txt', 'r') as infile, open('c:\NDCOnly.txt', 'w') as outfile:
    temp = infile.read().replace("-", "")
    outfile.write(temp)

Đã trả lời ngày 5 tháng 10 năm 2013 lúc 19:06Oct 5, 2013 at 19:06

Neaglneaglneeagl

3401 Huy hiệu bạc13 Huy hiệu đồng1 silver badge13 bronze badges

2

Đôi khi chúng tôi muốn loại bỏ tất cả các lần xuất hiện của một ký tự khỏi một chuỗi. Có hai cách phổ biến để đạt được điều này.

Python loại bỏ ký tự khỏi chuỗi

  1. Sử dụng hàm thay thế chuỗi ()
  2. Sử dụng hàm dịch ()

Python loại bỏ ký tự khỏi chuỗi bằng cách sử dụng thay thế ()

Chúng ta có thể sử dụng hàm thay thế chuỗi () để thay thế một ký tự bằng một ký tự mới. Nếu chúng tôi cung cấp một chuỗi trống làm đối số thứ hai, thì ký tự sẽ bị xóa khỏi chuỗi. Lưu ý rằng chuỗi là bất biến trong Python, vì vậy hàm này sẽ trả về một chuỗi mới và chuỗi ban đầu sẽ không thay đổi.

s = 'abc12321cba'

print(s.replace('a', ''))

Đầu ra:

1. 8290-033010

8

Python loại bỏ ký tự khỏi chuỗi bằng cách sử dụng dịch ()

Chức năng Python Chuỗi dịch () Thay thế từng ký tự trong chuỗi bằng bảng dịch đã cho. Chúng tôi phải chỉ định điểm mã Unicode cho ký tự và ‘không có cách thay thế để xóa nó khỏi chuỗi kết quả. Chúng ta có thể sử dụng hàm ord () để có được điểm mã unicode của một ký tự.

s = 'abc12321cba'

print(s.translate({ord('a'): None}))

Đầu ra:

1. 8290-033010

8 Nếu bạn muốn thay thế nhiều ký tự, điều đó có thể được thực hiện dễ dàng bằng cách sử dụng trình lặp. Hãy cùng xem cách loại bỏ các ký tự ‘A,’ B, và ‘C, khỏi một chuỗi.

s = 'abc12321cba'

print(s.translate({ord(i): None for i in 'abc'}))

Đầu ra:

with open('c:\NDCHypen.txt', 'r') as infile,
     open('c:\NDCOnly.txt', 'w') as outfile:
    replace("-", "")

0

Loại bỏ khoảng trắng khỏi chuỗi

s = ' 1 2 3 4 '
print(s.replace(' ', ''))  # 1234
print(s.translate({ord(i): None for i in ' '}))  # 1234

Python loại bỏ dòng mới khỏi chuỗi

s = 'ab\ncd\nef'
print(s.replace('\n', ''))
print(s.translate({ord('\n'): None}))

Xóa con khỏi chuỗi

Chuỗi thay thế () đối số hàm là chuỗi. Hãy để xem cách loại bỏ một từ khỏi một chuỗi.

1. 8290-033010

0

Đầu ra:

with open('c:\NDCHypen.txt', 'r') as infile,
     open('c:\NDCOnly.txt', 'w') as outfile:
    replace("-", "")

1

Xóa số lần được chỉ định

Chúng tôi cũng có thể vượt qua tham số thứ ba trong hàm thay thế () để chỉ định số lần thay thế nên được thực hiện.

1. 8290-033010

1

Đầu ra:

with open('c:\NDCHypen.txt', 'r') as infile,
     open('c:\NDCOnly.txt', 'w') as outfile:
    replace("-", "")

2

Bạn có thể kiểm tra toàn bộ tập lệnh Python và nhiều ví dụ về Python từ Kho lưu trữ GitHub của chúng tôi.

Làm thế nào để bạn xóa một ký tự khỏi một tệp văn bản trong Python?

Python loại bỏ ký tự khỏi chuỗi bằng cách sử dụng thay thế (), chúng ta có thể sử dụng chức năng String thay thế () để thay thế một ký tự bằng một ký tự mới.

replace()

We can use string replace() function to replace a character with a new character.

Làm cách nào để xóa các ký tự đặc biệt khỏi tệp văn bản?

Làm thế nào để xóa các ký tự đặc biệt khỏi văn bản.

.

Chuẩn bị văn bản của bạn. Đã sẵn sàng văn bản của bạn với các ký tự không mong muốn ..

Nhập dữ liệu. Dán dữ liệu của bạn hoặc tải tệp vào khu vực đầu vào ..

Chọn tùy chọn. Nhấp vào “Tùy chọn” và chọn bộ ký tự mong muốn bạn muốn giữ ..

Nộp. Nhấp vào nút “Gửi”. ….

Tất cả đã được làm xong..

Làm cách nào để loại bỏ một ký tự khỏi một chuỗi trong danh sách Python?

Phương thức Remove () xóa phần tử khớp đầu tiên (được truyền dưới dạng đối số) khỏi danh sách.Phương thức pop () loại bỏ một phần tử tại một chỉ mục nhất định và cũng sẽ trả về mục đã xóa.Bạn cũng có thể sử dụng từ khóa DEL trong Python để xóa một phần tử hoặc lát khỏi danh sách.

. The pop() method removes an element at a given index, and will also return the removed item. You can also use the del keyword in Python to remove an element or slice from a list.

Làm thế nào để bạn loại bỏ một phần của chuỗi trong Python?

Hủy bỏ một phần của chuỗi trong Python.

.

Hủy bỏ một chuỗi con bằng cách thay thế nó bằng một chuỗi trống…..

Hủy bỏ các ký tự hàng đầu và dấu vết: dải ().

Xóa các ký tự hàng đầu: lstrip ().

Hủy bỏ các ký tự dấu vết: rstrip ().

Hủy bỏ tiền tố: removePrefix () (Python 3.9 trở lên).

Hủy bỏ hậu tố: RemoveSuffix () (Python 3.9 trở lên).