Bài viết được sự cho phép của tác giả Phạm Văn Nguyên
Python là một trong những ngôn ngữ lập trình dễ học nhất.
Một trong những chương trình đầu tiên bạn viết khi bạn 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 .
Một 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à tada bạn có chương trình hello world của bạn.
Trong Python 3, print () là một hàm in ra những 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 Nguyenpv") # output:# Hello World! # My name is Nguyenpv
Như bạn có thể nhận thấy, hai chuỗi không được in lần lượt từng chuỗi trên cùng một dòng mà thay vào đó là các dòng riêng biệt.
Mặc dù đây có thể là những gì bạn thực sự muốn, nhưng không phải lúc nào cũng như vậy.
nếu bạn đến từ một ngôn ngữ khác, bạn có thể 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 thể hiện rõ ràng mong muốn in một dòng mới bằng cách sử dụng chức năng println hoặc nhập ký tự dòng mới ( n) bên trong chức năng 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 chúng ta không muốn có các ký tự dòng mới trong python?
Và đây là 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 print.
# use the named argument "end" to explicitly specify the end of line string print("Hello World!", end = '') print("My name is Nguyenpv") # output: # Hello World!My name is Nguyenpv
Bạn có thể sử dụng đối số end để đề cập rõ ràng chuỗi cần được nối ở cuối dòng.
Bất cứ điều gì bạn cần làm là thêm đối số end 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ự dòng mới và không có khoảng trắng nào sẽ được thêm vào đầu vào của bạn.
Tuyển dụng lập trình viên python mới nhất
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 Nguyenpv" # output # Hello World! My name is Nguyenpv
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 nhất và đơn giản nhất để đi.
Nhưng nếu bạn muốn in mà không có dấu cách hoặc dòng mới thì sao?
Trong trường hợp này, bạn có thể sử dụng hàm sys.stdout.write từ module sys .
Hàm này sẽ chỉ in bất cứ thứ gì bạn nói rõ ràng để in.
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 Nguyenpv") # output # Hello World!My name is Nguyenpv
Haiz, đoạn này thấy nhì nhằng, phức tạp hơn ngôn ngữ lập trình khác rồi đấy, ví dụ PHP, ở PHP thì chỉ cẩn dùng 1 hàm ví dụ “echo“, rồi muốn in như nào thì in : ))
Phần 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 chặn dòng mới kết thúc.
Trong Python 2, bạn có thể sử dụng dấu phẩy sau tuyên bố in của bạn nếu bạn không nhớ không gian, hoặc bạn chỉ có thể sử dụng hàm sys.stdout.write()
Chúc các bạn học tốt.
Bài viết gốc được đăng tải tại nguyenpv.com
Xem thêm các vị trí tuyển dụng IT hấp dẫn tại TopDev