HomeLập trìnhPythonPython Print Without...

Python Print Without New Line – In trên cùng một dòng


Các print là một chức năng quan trọng trong Python, vì nó được sử dụng để chuyển hướng đầu ra đến thiết bị đầu cuối. Đầu ra cũng có thể được chuyển hướng đến một tập tin.

Các print Theo mặc định, chức năng này sẽ in trên một dòng mới mỗi lần. Điều này là do định nghĩa của print() trong tài liệu Python.

Tại sao Python print chức năng in trên một dòng mới theo mặc định?

Trong đoạn mã bên dưới, chúng ta có thể thấy rằng theo mặc định, giá trị của end\n. Điều này có nghĩa là mọi câu lệnh in sẽ kết thúc bằng dấu \n. Lưu ý rằng \n đại diện cho một ký tự dòng mới.

hinh-22
Nguồn: Tài liệu Python.

Hãy xem một ví dụ về chức năng in.

Mã ví dụ:

# using Print with default settings

print("This will be printed")
print("in separate lines")

đầu ra:

hinh-23

Trong ví dụ trên, các dòng sẽ được in riêng biệt do định nghĩa: end='\n'.

Cách in trên cùng một dòng trong Python

Đôi khi, chúng ta cần in các chuỗi trên cùng một dòng. Điều này đặc biệt hữu ích khi chúng ta đang đọc các tệp bằng Python. Khi chúng tôi đọc tệp, chúng tôi sẽ nhận được khoảng trống giữa các dòng theo mặc định.

Đọc thêm  Định dạng chuỗi Python – Ví dụ về định dạng in Python S

Hãy xem một ví dụ. Chúng tôi có một tệp có tên rainbow.txt với nội dung hiển thị bên dưới:

hinh-41
Nội dung của tập tin Rainbow.txt

Mã số:

fhand = open('rainbow.txt')
for line in fhand:
  print(line)

Trong đoạn mã trên, chúng tôi đã sử dụng trình xử lý tệp fhand để truy cập tập tin. Tiếp theo, chúng tôi lặp qua các dòng bằng cách sử dụng một for vòng.

Đầu ra:

Khi chúng tôi in nội dung, kết quả như thế này:

hình ảnh-42

Dòng trống thêm là do sự hiện diện của \n ở cuối mỗi dòng trong tệp để di chuyển con trỏ đến dòng tiếp theo. Cuối cùng, dòng trống được thêm vào do print hành vi của chức năng như đã thảo luận trong phần trước.

Giả sử chúng ta muốn loại bỏ những thứ này. Để làm điều đó, chúng ta có thể thực hiện một số thay đổi. Đối với điều này, chúng ta cần thay đổi hành vi mặc định của print. Chúng ta sẽ xem cách thực hiện điều đó một cách chi tiết trong các phần tiếp theo.

Tùy chọn #1 – Cách sửa đổi giá trị của end trong một print chức năng

Hãy tùy chỉnh giá trị của end bên trong print chức năng. Chúng tôi sẽ đặt nó thành ' ' đó là một không gian.

Mã ví dụ:

# Customizing the value of 'end'

print("This is string 1 same line", end=' ')
print("This is string 2 different line")

đầu ra:

hình ảnh-32

Bây giờ chúng ta có thể thấy rằng thay vì một dòng mới (\n) chúng tôi đang yêu cầu chức năng in thêm một ký tự trống ở cuối.

Đọc thêm  Cách xây dựng chương trình Python để tải xuống video YouTube

Chúng tôi cũng có thể cung cấp một ký tự khác thay vì để trống như thế này:

# Customizing the value of 'end' with a custom separator

print("This is string 1 same line", end=';')
print("This is string 2 different line")

đầu ra:

hình ảnh-33

Cách sử dụng: Ví dụ trên chỉ là cách in trên cùng một dòng với ký tự phân cách do bạn chọn.

Hãy xem một ví dụ khác. Chúng ta có thể lặp qua một danh sách các mục và in chúng trên cùng một dòng với end = ' ' .

# iterating lists

list_fruits = ['red','blue', 'green', 'orange']  
for i in list_fruits:  
    print(i, end = ' ')  
    

Đầu ra:

hình ảnh-34

Tùy chọn #2 – Xóa khoảng trắng bằng cách sử dụng rstrip() trong tập tin

Chúng ta có thể xóa một số ký tự xung quanh một chuỗi bằng cách sử dụng strip(). Theo mặc định, mỗi dòng trong tệp có "\n" cuối cùng. Vì chúng tôi chỉ quan tâm đến ký tự bên phải, chúng tôi sẽ sử dụng rstrip() viết tắt của dải bên phải. Chúng ta sẽ thảo luận về một ví dụ về rstrip() tiếp theo.

Bạn có thể tìm hiểu thêm về strip() phương pháp trong bài đăng trên blog này.

Quay lại ví dụ in tệp của chúng tôi

Hãy nhớ rằng, chúng ta đã thảo luận về một ví dụ in tệp trong đó các dòng bổ sung được in:

hinh-43

Hãy sửa đổi mã một chút bằng cách sử dụng rstrip().

print("1. Removing extra blank line")

fhand = open('rainbow.txt')
for line in fhand:
  line=line.rstrip()
  print(line)

print("\n")

print("2. Printing all in the same line")
fhand = open('rainbow.txt')
for line in fhand:
  line=line.rstrip("\n")
  print(line, end = ' ')

đầu ra

Đầu tiên, chúng tôi đã xóa khoảng trắng thừa bằng rstrip(). Trong bước tiếp theo, chúng tôi đã loại bỏ dòng dấu một lần nữa với rstrip("\n")end=' ' để có được đầu ra trong một dòng.

Đọc thêm  đối tượng int không thể gọi được – Cách khắc phục trong Python
hình ảnh-48

kết thúc

Chúng ta đã thấy cách chúng ta có thể in bằng Python mà không cần dòng mới. Chúng ta cũng đã thấy cách chúng ta có thể in các dòng trong một tệp mà không cần thêm các dòng ở cuối. Tôi hy vọng bạn tìm thấy hướng dẫn này hữu ích.

Chia sẻ suy nghĩ của bạn với tôi trên Twitter!

Bạn có thể đọc các bài viết khác của tôi ở đây.





Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status