Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên
Trình chỉnh sửa mã Python
Có một cách khác để giải quyết giải pháp này?
Trước. Viết chương trình Python để đếm và hiển thị các nguyên âm của một văn bản nhất định.
Tiếp theo. Viết chương trình Python để tìm ký tự không lặp lại đầu tiên trong chuỗi đã cho
Mức độ khó của bài tập này là gì?
Dễ dàng trung bình khóKiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource
Chia sẻ Hướng dẫn / Bài tập này trên. Facebook và Twitter
con trăn. Lời khuyên trong ngày
Trình kiểm tra đảo chữ
Một cách đơn giản để tiếp cận điều này là sử dụng hàm được sắp xếp của Python. Nếu 2 từ là đảo chữ thì chúng phải giống nhau khi cả hai được sắp xếp theo thứ tự
Python hỗ trợ cắt chỉ mục tiêu cực cùng với cắt theo hướng tích cực. Chỉ mục phủ định bắt đầu từ -1 đến -[iterable_length]. Chúng tôi sẽ sử dụng phép cắt âm để lấy các phần tử từ cuối một lần lặp
- Chỉ mục -1 giúp bạn lấy phần tử cuối cùng từ phần tử có thể lặp lại
- Chỉ mục -2 giúp bạn có được phần tử cuối cùng thứ 2 từ phần tử có thể lặp lại
- Và nó tiếp tục cho đến phần tử đầu tiên
Hãy xem một ví dụ
name = 'Geekflare'
print[name[-1]]
print[name[-len[name]]]
Chương trình trên sẽ in các ký tự cuối cùng và đầu tiên của chuỗi bằng cách sử dụng chỉ mục phủ định
Làm cách nào để xóa phần tử cuối cùng khỏi chuỗi bằng cách cắt? . Chúng tôi biết cách trích xuất một phần của chuỗi bằng cách cắt. Hãy áp dụng điều tương tự với chỉ số âm để xóa ký tự cuối cùng khỏi chuỗi
- Cắt chuỗi từ đầu đến cuối trước phần tử
buggy_name = 'GeekflareE'
name = buggy_name[:-1]
print[name]
Hãy tập trung vào dòng thứ hai trong đoạn mã trên. Đó là dòng ma thuật trong mã. Là một phép cắt truyền thống, nó trích xuất chuỗi con từ chỉ mục bắt đầu đến cuối cùng nhưng một phép cắt bỏ qua phần tử chỉ mục thứ hai đã cho
Bạn sẽ nhận được Geekflare
dưới dạng đầu ra nếu chạy đoạn mã trên
dải băng
Phương thức chuỗi rstrip xóa các ký tự ở phía bên phải của chuỗi được cấp cho nó. Vì vậy, chúng ta có thể sử dụng nó để loại bỏ phần tử cuối cùng của chuỗi. Chúng tôi không phải viết nhiều hơn một dòng mã để xóa ký tự cuối cùng khỏi chuỗi
- Cung cấp phần tử cuối cùng cho phương thức dải, nó sẽ trả về chuỗi bằng cách xóa ký tự cuối cùng
Hãy xem đoạn mã
buggy_name = 'GeekflareE'
name = buggy_name.rstrip[buggy_name[-1]]
print[name]
Chúng tôi đã cung cấp ký tự cuối cùng của chuỗi cho phương thức dải. Nó xóa ký tự cuối cùng khỏi chuỗi và trả về một bản sao không có ký tự cuối cùng
Nó sẽ in Geekflare
trong bảng điều khiển, nếu bạn thực hiện nó
Ví dụ thực tế – loại bỏ từ cuối cùng
Vâng, chúng tôi sẽ áp dụng những gì chúng tôi có trong các phần trước trong một ví dụ thực tế
Giả sử chúng ta có một tệp chứa nhiều dòng văn bản. Và chúng ta cần xóa từ cuối cùng khỏi mỗi dòng trong tệp
Thực hiện theo các bước dưới đây để viết chương trình
- Tạo một tệp có tên random_text. txt và trang một vài dòng văn bản trong đó
- Khởi tạo biến dữ liệu dưới dạng chuỗi rỗng
- Mở tệp bằng phương thức với và mở ở chế độ đọc và ghi
- Đọc nội dung của tệp bằng phương thức readlines
- Lặp lại qua từng dòng nội dung
- Tách dòng văn bản bằng phương pháp tách dòng trong word
- Xóa từ cuối cùng bằng một trong các phương pháp trên
- Tham gia kết quả để tạo thành một chuỗi
- Nối kết quả vào biến dữ liệu
- Xóa dữ liệu khỏi tệp bằng các phương pháp tìm kiếm và rút gọn
- Ghi dữ liệu mới nhất vào tệp bằng phương thức ghi
Tệp chứa dữ liệu sau
This is a sample line for testing. LastWord.
This is a sample line for testing. KillingIt.
This is a sample line for testing. RandomWord.
This is a sample line for testing. DeleteIt.
This is a sample line for testing. RemovingIt.
Xem mã dưới đây
updated_data = ''
# opening the file
with open['random_text.txt', 'r+'] as file:
# read the file content
file_content = file.readlines[]
# iterate over the content
for line in file_content:
# removing last word
updated_line = ' '.join[line.split[' '][:-1]]
# appending data to the variable
updated_data += f'{updated_line}\n'
# removing the old data
file.seek[0]
file.truncate[]
# writing the new data
file.write[updated_data]
Nếu bạn thực thi đoạn mã trên với tệp đã cho, thì tệp sẽ có dữ liệu được cập nhật như sau