Bạn có thể in bằng Python mà không cần dòng mới không?

Một trong những chương trình đầu tiên mà bạn viết khi bắt đầu học bất kỳ ngôn ngữ lập trình mới nào là chương trình hello world

Chương trình hello world trong python trông như thế này

# hello world in python
print["Hello World!"]

thật dễ dàng

Chỉ cần một dòng và bùng nổ, bạn có chương trình chào thế giới của mình

Trong Python 3, print[] là một hàm in ra mọi thứ trên màn hình [print là một câu lệnh trong Python 2]

Như bạn có thể thấy, nó là một chức năng rất đơn giản

Tuy nhiên, có một điều thực sự khó chịu về chức năng này

Nó tự động in một dòng mới '\n' ở cuối dòng

Hãy xem ví dụ này

print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim

Như bạn có thể nhận thấy, hai chuỗi không được in lần lượt trên cùng một dòng mà thay vào đó là trên các dòng riêng biệt

Mặc dù đây có thể là điều bạn thực sự muốn, nhưng không phải lúc nào cũng vậy

nếu bạn đến từ một ngôn ngữ khác, bạn có thể cảm thấy thoải mái hơn khi đề cập rõ ràng liệu một dòng mới có nên được in ra hay không

Ví dụ: trong Java, bạn phải chỉ ra rõ ràng mong muốn in một dòng mới bằng cách sử dụng hàm println hoặc nhập ký tự xuống dòng [\n] bên trong hàm in của bạn

// option 1
System.out.println["Hello World!"]
// option 2
System.out.print["Hello World!\n"]

Vậy chúng ta nên làm gì nếu không muốn ký tự xuống dòng trong python?

Hãy nhảy ngay vào giải pháp

Giải pháp

In không có dòng mới trong Python 3

Python 3 cung cấp giải pháp đơn giản nhất, tất cả những gì bạn phải làm là cung cấp thêm một đối số cho hàm in

# use the named argument "end" to explicitly specify the end of line string
print["Hello World!", end = '']
print["My name is Karim"]
# output:
# Hello World!My name is Karim

Bạn có thể sử dụng đối số có tên tùy chọn end để đề cập rõ ràng chuỗi sẽ được thêm vào cuối dòng

Bất cứ điều gì bạn cung cấp làm đối số kết thúc sẽ là chuỗi kết thúc

Vì vậy, nếu bạn cung cấp một chuỗi trống, thì sẽ không có ký tự xuống dòng nào và không có khoảng trắng nào được thêm vào đầu vào của bạn

In không có dòng mới trong Python 2

Trong python 2, cách dễ nhất để tránh dòng mới kết thúc là sử dụng dấu phẩy ở cuối câu lệnh in của bạn

# no newlines but a space will be printed out
print "Hello World!",
print "My name is Karim"
# output
# Hello World! My name is Karim

Như bạn có thể thấy, mặc dù không có dòng mới, chúng tôi vẫn có một ký tự khoảng trắng giữa hai câu lệnh in

Nếu bạn thực sự cần một không gian, thì đây là cách đơn giản và dễ hiểu nhất

Nhưng nếu bạn muốn in mà không có khoảng trắng hoặc dòng mới thì sao?

Bạn có thể làm điều này, bạn nên sử dụng hệ thống toàn năng. tiêu chuẩn. ghi chức năng từ mô-đun sys

Chức năng này sẽ chỉ in bất cứ thứ gì bạn yêu cầu nó in một cách rõ ràng

Không có chuỗi kết thúc

không có phép thuật

Hãy lấy một ví dụ

import sys

sys.stdout.write["Hello World!"]
sys.stdout.write["My name is Karim"]
# output
# Hello World!My name is Karim

Sự kết luận

Trong Python 3, bạn có thể sử dụng đối số end được đặt tên trong hàm in và gán một chuỗi trống cho đối số này để ngăn dòng mới kết thúc

Trong Python 2, bạn có thể sử dụng dấu phẩy sau câu lệnh in nếu không ngại khoảng trắng hoặc bạn chỉ cần sử dụng sys. tiêu chuẩn. chức năng ghi []

Trong Python, hàm

print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
3 tích hợp được sử dụng để in nội dung ra đầu ra tiêu chuẩn, thường là bàn điều khiển. Theo mặc định, chức năng in thêm một ký tự xuống dòng ở cuối nội dung được in, do đó, đầu ra tiếp theo của chương trình xảy ra trên dòng tiếp theo

Hãy thử chạy mã này để xem một ví dụ

print['Banana']
print['pudding.']

đầu ra

Banana
pudding.

Như mong đợi, đầu ra của mỗi câu lệnh

print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
3 được hiển thị trên dòng riêng của nó

Tuy nhiên, trong một số trường hợp, chúng tôi có thể muốn xuất nhiều chuỗi trên cùng một dòng bằng cách sử dụng các câu lệnh

print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
3 riêng biệt. Có một số cách để ngăn Python thêm ký tự xuống dòng khi sử dụng hàm
print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
3, tùy thuộc vào việc chúng ta có đang sử dụng Python 2 hay không. x hoặc Python 3. x

Ví dụ: loại chức năng này hữu ích khi bạn đang phát triển REPL hoặc bất kỳ ứng dụng dòng lệnh nào nhận đầu vào từ người dùng và bạn không muốn lời nhắc và văn bản đầu vào nằm trên các dòng khác nhau

Đối với Trăn 2. x, chúng ta chỉ cần thêm dấu phẩy sau lệnh gọi hàm in, thao tác này sẽ kết thúc chuỗi được in bằng khoảng trắng thay vì ký tự xuống dòng

________số 8

đầu ra

Banana pudding.

Trong Trăn 3. x, chúng ta có thể sử dụng đối số từ khóa

Banana
pudding.
0 trong phương thức
print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
3 để chỉ định ký tự kết thúc cho chuỗi được in

print["Hello World!"]
print["My name is Karim"]
# output:
# Hello World!
# My name is Karim
1

đầu ra

Banana pudding.

Vì vậy, trong trường hợp này, một khoảng trắng được sử dụng làm ký tự "kết thúc", dẫn đến các chuỗi được in nằm trên cùng một dòng và chỉ được phân tách bằng một khoảng trắng

Bài viết này được viết bởi Jacob Stopak, một nhà tư vấn và phát triển phần mềm với niềm đam mê giúp đỡ người khác cải thiện cuộc sống của họ thông qua mã. Jacob là người tạo ra Code Card - một công cụ thuận tiện cho các nhà phát triển tra cứu, sao chép và dán các đoạn mã phổ biến

Làm cách nào để in một biến mà không có Python dòng mới?

Để in mà không cần xuống dòng, tất cả những gì bạn phải làm là thêm một đối số bổ sung vào cuối câu lệnh in của mình. .
Sử dụng Đối số "kết thúc" trong câu lệnh in [Python 3. X].
Sử dụng Thư viện "sys" [Python 3. X] để in mà không cần xuống dòng. .
Sử dụng "dấu phẩy" để Chấm dứt Tuyên bố In

'\ t nghĩa là gì trong Python?

Trong các chuỗi Python, dấu gạch chéo ngược “ ” là một ký tự đặc biệt, còn được gọi là ký tự “thoát”. Nó được sử dụng để đại diện cho các ký tự khoảng trắng nhất định. “\t” là tab, “\n” là dòng mới và “\r” là dấu xuống dòng

Chủ Đề