print [] là một lệnh và chuỗi là một biến. Chỉ cần Google những gì là biến và lệnh là gì.
Ngày 21 tháng 9 năm 2016, 7:12 tối
Shrijit
sun print [] là một lệnh để hiển thị đầu ra và trong chuỗi giống như các biến khác, chúng tôi lưu trữ giá trị bất kỳ tiếng Anh hoặc bất kỳ từ hoặc một ký tự nào
Ngày 22 tháng 9 năm 2016, 1:20 chiều
Kartik
Chuỗi là một loại và print [] là một lệnh
Ngày 22 tháng 9 năm 2016, 1:48 chiều
Fernando Carvalho
Chuỗi là một loại trong Python như trong nhiều ngôn ngữ lập trình. Mặc dù có hàm "str []" được sử dụng để chuyển đổi loại. Nhưng "print []" là một lệnh hàm được sử dụng để hiển thị đầu ra trên màn hình.
Ngày 23 tháng 9 năm 2016, 7:28 sáng
Ajay Singh Parmar
0 điểm
hơn 9 năm
Tôi có đoạn mã sau: PI = 3.14 in str [pi]
Sự khác biệt về đầu ra giữa in str [pi] và in pi là gì?
Tôi đã nhận được đầu ra cho cả hai là 3.14, vì vậy tôi không thể tạo ra sự khác biệt!
Trả lời 520A77CBABF82133E0039E6
Này Annie,
Sự khác biệt là print str[pi]
sẽ in giá trị của bạn dưới dạng chuỗi, trong khi print pi
sẽ xuất ra giá trị dưới dạng số. Từ những gì tôi có thể nói, điều này rất quan trọng sau này khi bạn gặp các vấn đề như in một giá trị bên trong một chuỗi các câu lệnh.
Ex.
print "Hello Annie, I'm " + pi + " years old!"
Điều này sẽ khiến Python tức giận với bạn vì đã trộn một giá trị số nguyên với một bộ chuỗi, bởi vì nó là một số nguyên!
Python sẽ chấp nhận
0.0006760049999998685
0.0013034899999999627
0 Điều này sẽ chấp nhận vì bạn đang thêm các chuỗi [nối] với nhau lần này.Tôi hy vọng điều này sẽ giúp ích, tôi không có nghĩa là một chuyên gia Python, và có thể có cách để in một chữ số được nối với một chuỗi, nhưng tôi không biết về chúng.
điểm
Gửi bởi Niko
hơn 9 năm
Tôi có đoạn mã sau: PI = 3.14 in str [pi]
Sự khác biệt về đầu ra giữa in str [pi] và in pi là gì?
Tôi đã nhận được đầu ra cho cả hai là 3.14, vì vậy tôi không thể tạo ra sự khác biệt!
Trả lời 520A77CBABF82133E0039E6
Này Annie,
Sự khác biệt về đầu ra giữa in str [pi] và in pi là gì?
Tôi đã nhận được đầu ra cho cả hai là 3.14, vì vậy tôi không thể tạo ra sự khác biệt!
Trả lời 520A77CBABF82133E0039E6
Này Annie,
Sự khác biệt về đầu ra giữa in str [pi] và in pi là gì?
Tôi đã nhận được đầu ra cho cả hai là 3.14, vì vậy tôi không thể tạo ra sự khác biệt!
Trả lời 520A77CBABF82133E0039E6
Này Annie,
Sự khác biệt là print str[pi]
sẽ in giá trị của bạn dưới dạng chuỗi, trong khi print pi
sẽ xuất ra giá trị dưới dạng số. Từ những gì tôi có thể nói, điều này rất quan trọng sau này khi bạn gặp các vấn đề như in một giá trị bên trong một chuỗi các câu lệnh.
Điều quan trọng là phải hiểu rằng trong
0.0006760049999998685
0.0013034899999999627
1, hoạt động ghép nối không liên quan gì đến 0.0006760049999998685
0.0013034899999999627
2 và xảy ra trước khi 0.0006760049999998685
0.0013034899999999627
2 được gọi.Hãy làm một số thời gian:
from timeit import Timer
def with_concat[]:
print["Two plus two = " + str[4]]
def no_concat[]:
print["Two plus two =", 4]
print[min[Timer[with_concat].repeat[100, 100]]]
print[min[Timer[no_concat].repeat[100, 100]]]
Đầu ra
0.0006760049999998685
0.0013034899999999627
Phản đối trực quan [xem nhận xét của tôi về câu hỏi, sự kết hợp chuỗi có thể tốn kém] ví dụ với sự kết hợp thực sự nhanh hơn [bởi hệ số 2!] Theo cách có thể tái tạo. Nhưng tại sao?
Hãy kiểm tra mã byte:
from dis import dis
def with_concat[]:
print["Two plus two = " + str[4]]
def no_concat[]:
print["Two plus two =", 4]
dis[with_concat]
đầu ra
0 LOAD_GLOBAL 0 [print]
2 LOAD_CONST 1 ['Two plus two = ']
4 LOAD_GLOBAL 1 [str]
6 LOAD_CONST 2 [4]
8 CALL_FUNCTION 1
10 BINARY_ADD
12 CALL_FUNCTION 1
14 POP_TOP
16 LOAD_CONST 0 [None]
18 RETURN_VALUE
Trong khi
dis[no_concat]
đầu ra
0 LOAD_GLOBAL 0 [print]
2 LOAD_CONST 1 ['Two plus two =']
4 LOAD_CONST 2 [4]
6 CALL_FUNCTION 2
8 POP_TOP
10 LOAD_CONST 0 [None]
12 RETURN_VALUE
Trong khi
Đánh giá bằng mã byte, nó cũng trông giống như
0.0006760049999998685
0.0013034899999999627
4 phải nhanh hơn [mã ngắn hơn, đơn giản hơn].Độ trễ phải đến từ mã nguồn C [trong trường hợp ít nhất là CPython].
static PyObject *
builtin_print[PyObject *self, PyObject *args, PyObject *kwds]
{
.
.
.
for [i = 0; i < PyTuple_Size[args]; i++] {
if [i > 0] {
if [sep == NULL]
err = PyFile_WriteString[" ", file];
else
err = PyFile_WriteObject[sep, file,
Py_PRINT_RAW];
if [err]
return NULL;
}
err = PyFile_WriteObject[PyTuple_GetItem[args, i], file,
Py_PRINT_RAW];
if [err]
return NULL;
}
.
.
.
}
Hãy xem xét các dòng có liên quan: