2012-05-16 Show
Khả năng tạo chuỗi với nội dung động là rất quan trọng trong việc tạo các ứng dụng. Python làm cho điều này dễ dàng, nhưng nó không phải lúc nào cũng rõ ràng cách tiếp cận chính xác là gì. Chúng ta hãy trải qua bốn cách tạo chuỗi:
Sự kết hợp ngầmSự kết hợp rõ ràng >>> 'hello' 'world' 'helloworld' Định dạng chuỗi thông qua toán tử % >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string Định dạng chuỗi thông qua phương thức >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string3 >>> name = 'Nick' >>> 'hello' name File "<stdin>", line 1 'hello' name Nếu một mình khoảng trắng tách biệt các chữ chuỗi liền kề, chúng sẽ được nối với nhau. Sự kết hợp rõ ràngĐịnh dạng chuỗi thông qua toán tử % >>> 'hello' + 'world' 'helloworld' Định dạng chuỗi thông qua phương thức >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string3 >>> num_examples = 4 >>> 'I have ' + num_examples + ' examples to discuss.' Traceback (most recent call last): File "<input>", line 1, in <module> TypeError: cannot concatenate 'str' and 'int' objects Nếu một mình khoảng trắng tách biệt các chữ chuỗi liền kề, chúng sẽ được nối với nhau. >>> 'I have ' + str(num_examples) + ' examples to discuss.' 'I have 4 examples to discuss.' Định dạng chuỗi thông qua toán tử %Định dạng chuỗi thông qua phương thức >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string3 Nếu một mình khoảng trắng tách biệt các chữ chuỗi liền kề, chúng sẽ được nối với nhau. printf("hello %s\n", "world"); Điều này có thể hữu ích nếu bạn có một chuỗi dài mà bạn muốn chia tay >>> 'I have %d things to talk about' %num_topics 'I have 4 things to talk about' Sự kết hợp ngầm không hoạt động để chèn các biến vào chuỗi: >>> 'I have %d things to talk about. Number 1: %s' %(num_topics, 'Implicit concatenation') 'I have 4 things to talk about. Number 1: Implicit concatenation' Trong trường hợp đó, chúng ta cần phải rõ ràng hơn. >>> 'It is %.2f degrees out' %(98.63483) # display 2 decimal places 'It is 98.63 degrees out' Bạn cũng có thể sử dụng toán tử >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string4 để kết nối chuỗi. >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string0 Không giống như trong Java, các loại không tự động bị ép buộc; Đó là một lỗi khi cố gắng nối các chuỗi không vào chuỗi: Bạn phải chuyển đổi rõ ràng các loại không chuỗi thành chuỗi trước khi sử dụng toán tử này.Tạo các chuỗi dài hơn bằng cách kết hợp các chất nền khác nhau hoạt động, nhưng nó không phải là giải pháp thanh lịch nhất. Đó là một sai lầm phổ biến để quên đặt một khoảng trống trước hoặc sau bất cứ thứ gì được chèn vào giữa hai chuỗi khác, lãng phí thời gian vào phần lập trình viên. Nó cũng hơi khó để quét trong khi đọc mã nguồn; Các dấu hiệu + có thể đánh lạc hướng những gì chuỗi đang cố gắng nói. >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string1 Nếu bạn đã sử dụng C trước đây, có lẽ bạn đã quen thuộc với >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string5 và >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string6, cho phép bạn nhúng các ký tự đặc biệt trong các chuỗi của bạn được trợ cấp với các đối số sau. Ví dụ, >>> a_long_string = ('hello this is a very very very very' ... 'long string') >>> print a_long_string hello this is a very very very verylong string2 Sẽ sản xuất Hello Hello World. Python có tính năng này được tích hợp trong các chuỗi với toán tử %. Bạn có thể đọc thêm độ sâu về [hoạt động định dạng chuỗi] [] và cú pháp của nó, nhưng ít nhất bạn nên ghi nhớ các cờ %D (đối với các loại số nguyên), %f (cho điểm nổi) và %s (đối với dây). Ví dụ,
Đây là một kỹ thuật rất mạnh mẽ, đặc biệt là khi bạn tìm hiểu các cờ định dạng mà nhà điều hành này hỗ trợ. Ví dụ, Kỹ thuật này cũng không hoạt động khi có nhiều sự thay thế để thực hiện:Bạn đã nắm bắt được sai lầm? . Nếu bạn có nhiều hơn 2 hoặc 3 thay thế, tôi khuyên bạn nên định dạng kỹ thuật sau - chuỗi. Làm thế nào để bạn sử dụng giá trị động trong Python?Các cách khác nhau để có được giá trị động trong Python.. Sử dụng hàm input input () hoặc raw_input tích hợp .. Sử dụng hàm eval () tích hợp .. Sử dụng hàm exec () tích hợp .. Sử dụng hàm execfile () tích hợp .. Sử dụng hàm compile () tích hợp .. Sử dụng hàm __Import __ () .. Làm thế nào để bạn thêm một chuỗi vào cuối chuỗi trong Python?Trong Python, chuỗi là một đối tượng bất biến.Bạn có thể sử dụng toán tử '+' để nối hai chuỗi để tạo một chuỗi mới.use the '+' operator to append two strings to create a new string.
Làm thế nào để bạn định dạng một chuỗi trong Python?Để sử dụng các chuỗi chữ được định dạng, hãy bắt đầu một chuỗi với F hoặc F trước dấu ngoặc kép mở hoặc dấu trích báo ba.Bên trong chuỗi này, bạn có thể viết một biểu thức python giữa các ký tự {và} có thể tham khảo các biến hoặc giá trị theo nghĩa đen.begin a string with f or F before the opening quotation mark or triple quotation mark. Inside this string, you can write a Python expression between { and } characters that can refer to variables or literal values. |