Cũng giống như với các số, bạn có thể thực hiện một số loại toán nhất định trên các chuỗi cũng như so sánh chúng. Tuy nhiên, không phải toán tử nào cũng hoạt động và một số toán tử không hoạt động như bạn mong đợi
Thêm các chuỗi lại với nhau
Các chuỗi cũng có thể được thêm vào với nhau để tạo chuỗi mới. Python sẽ đơn giản tạo một chuỗi mới từ các chuỗi nhỏ hơn, nối thêm chuỗi này sau chuỗi tiếp theo
Trong ví dụ sau, chúng tôi lấy các chuỗi được lưu trữ trong hai biến [trong trường hợp này là tên và họ của ai đó] và in chúng ra cùng nhau
>>> first_name = "Jacob" >>> last_name = "Fulton" >>> first_name + last_name 'JacobFulton'
Lưu ý rằng Python không thêm bất kỳ khoảng trắng nào giữa hai chuỗi. Một cách để thêm khoảng trắng vào chuỗi là thêm chúng một cách rõ ràng vào biểu thức
Hãy thêm khoảng trắng giữa tên và họ của người dùng
>>> first_name + " " + last_name 'Jacob Fulton'
Phép nhân
Bạn có thể làm một số điều thú vị với phép nhân và chuỗi. Khi bạn nhân một chuỗi với một số nguyên, Python sẽ trả về một chuỗi mới. Chuỗi mới này là chuỗi ban đầu, được lặp lại X số lần [trong đó X là giá trị của số nguyên]
Trong ví dụ sau, chúng ta sẽ nhân chuỗi 'xin chào' với một vài số nguyên. Ghi chú kết quả
>>> s = 'hello ' >>> s * 5 'hello hello hello hello hello' >>> s * 10 'hello hello hello hello hello hello hello hello hello hello ' >>> s * 0 ''
Điều gì xảy ra nếu chúng ta lưu trữ một số nguyên trong một chuỗi?
>>> s = '5' >>> s * 5 55555
Thông thường, nếu chúng ta nhân 5 với 5, Python sẽ cho chúng ta 25. Tuy nhiên, trong trường hợp này, '5' được lưu trữ dưới dạng một chuỗi, do đó, nó được coi là một chuỗi và được lặp lại năm lần
Tuy nhiên, có một số hạn chế đối với phép nhân chuỗi. Nhân với một số âm sẽ cho một chuỗi rỗng
>>> s = "hello" >>> s * -5 ''
Nhân với số float sẽ báo lỗi
>>> s * 1.0 Traceback [most recent call last]: File "", line 1, in TypeError: can't multiply sequence by non-int of type 'float'
So sánh chuỗi
Có thể so sánh các chuỗi giống như bạn so sánh các số. Tuy nhiên, hãy nhớ rằng Python rất kén chọn các chuỗi bằng nhau. Nếu hai chuỗi khác nhau, dù chỉ một chút, thì chúng không được coi là giống nhau. Xem xét ví dụ sau
>>> a = "Virginia" >>> b = "virginia" >>> a == b False
Mặc dù a và b rất giống nhau, nhưng một cái được viết hoa và một cái không. Bởi vì chúng không hoàn toàn giống nhau, Python trả về Sai khi chúng tôi hỏi liệu chúng có giống nhau không
Khoảng trắng cũng quan trọng. Hãy xem xét đoạn mã sau
>>> greet1 = "Hello " >>> greet2 = "Hello" >>> greet1 == greet2 False
lời chào1 có khoảng trắng ở cuối chuỗi trong khi lời chào2 thì không. Python xem xét khoảng trắng khi so sánh các chuỗi, vì vậy hai chuỗi không được coi là bằng nhau
Toán tử không hoạt động với chuỗi
Trong Python, toán tử duy nhất hoạt động với chuỗi là phép cộng và phép nhân. Bạn không thể sử dụng chuỗi nếu bạn đang trừ hoặc chia. Nếu bạn thử điều này, Python sẽ báo lỗi và chương trình của bạn sẽ ngừng chạy
________số 8Nếu bạn từng gặp lỗi như thế này [kiểu toán hạng không được hỗ trợ], điều đó thường có nghĩa là kiểu dữ liệu bạn đang cố sử dụng không biết cách sử dụng toán tử đó
ví dụ/cơ bản/hình chữ nhật_strings. py
width = "23" height = "17" area = width * height print[area]Trong bài viết này, chúng ta sẽ xem cách tạo nhiều bản sao của một chuỗi bằng cách sử dụng toán tử nhân[*]. Python hỗ trợ một số thao tác nhất định được thực hiện trên một chuỗi, toán tử nhân là một trong số đó
Phương pháp 1.
Chỉ cần sử dụng toán tử nhân trên chuỗi sẽ được sao chép với số lần cần sao chép
cú pháp
str2 = str1 * N
trong đó str2 là chuỗi mới nơi bạn muốn lưu trữ chuỗi mới
str1 là chuỗi gốc
N là số lần bạn muốn sao chép chuỗi
Sau khi sử dụng toán tử nhân, chúng tôi nhận được một chuỗi dưới dạng đầu ra
ví dụ 1
Python3
>>> first_name + " " + last_name 'Jacob Fulton'1>>> first_name + " " + last_name 'Jacob Fulton'2>>> first_name + " " + last_name 'Jacob Fulton'3>>> first_name + " " + last_name 'Jacob Fulton'4
>>> first_name + " " + last_name 'Jacob Fulton'5>>> first_name + " " + last_name 'Jacob Fulton'6>>> first_name + " " + last_name 'Jacob Fulton'7>>> first_name + " " + last_name 'Jacob Fulton'3>>> first_name + " " + last_name 'Jacob Fulton'2>>> s = 'hello ' >>> s * 5 'hello hello hello hello hello' >>> s * 10 'hello hello hello hello hello hello hello hello hello hello ' >>> s * 0 ''0>>> first_name + " " + last_name 'Jacob Fulton'20
>>> first_name + " " + last_name 'Jacob Fulton'21>>> first_name + " " + last_name 'Jacob Fulton'22>>> first_name + " " + last_name 'Jacob Fulton'23>>> first_name + " " + last_name 'Jacob Fulton'24>>> first_name + " " + last_name 'Jacob Fulton'25>>> first_name + " " + last_name 'Jacob Fulton'22>>> first_name + " " + last_name 'Jacob Fulton'23>>> first_name + " " + last_name 'Jacob Fulton'28>>> first_name + " " + last_name 'Jacob Fulton'25đầu ra
Chuỗi ban đầu là. Chuyên viên máy tính
Chuỗi mới là. Geeks Geeks
ví dụ 2
Python3
>>> first_name + " " + last_name 'Jacob Fulton'30>>> first_name + " " + last_name 'Jacob Fulton'2>>> first_name + " " + last_name 'Jacob Fulton'3>>> first_name + " " + last_name 'Jacob Fulton'33>>> first_name + " " + last_name 'Jacob Fulton'34>>> first_name + " " + last_name 'Jacob Fulton'3>>> first_name + " " + last_name 'Jacob Fulton'36
>>> first_name + " " + last_name 'Jacob Fulton'37>>> first_name + " " + last_name 'Jacob Fulton'7____13>>> first_name + " " + last_name 'Jacob Fulton'2____20>>> first_name + " " + last_name 'Jacob Fulton'34
>>> first_name + " " + last_name 'Jacob Fulton'43>>> first_name + " " + last_name 'Jacob Fulton'22>>> first_name + " " + last_name 'Jacob Fulton'23>>> first_name + " " + last_name 'Jacob Fulton'24>>> first_name + " " + last_name 'Jacob Fulton'25>>> first_name + " " + last_name 'Jacob Fulton'22>>> first_name + " " + last_name 'Jacob Fulton'23>>> first_name + " " + last_name 'Jacob Fulton'28>>> first_name + " " + last_name 'Jacob Fulton'25đầu ra
Chuỗi ban đầu là. Xin chào
Chuỗi mới là. Chào chào chào chào chào
Phương pháp 2. Sao chép một chuỗi nhiều lần trong danh sách
Nếu chúng ta có một chuỗi dưới dạng phần tử danh sách và chúng ta sử dụng toán tử nhân trong danh sách, chúng ta sẽ nhận được một danh sách mới chứa cùng một phần tử được sao chép số lần đã chỉ định
cú pháp
a = [“str1”] * N
a sẽ là một danh sách chứa str1 N số lần
Không nhất thiết phần tử chúng ta muốn sao chép trong danh sách phải là một chuỗi. Toán tử nhân trong một danh sách có thể nhân đôi bất cứ thứ gì
Chúng ta có thể nhân 2 chuỗi trong Python không?
Tạo nhiều bản sao của một chuỗi trong Python bằng toán tử nhân . Trong bài viết này, chúng ta sẽ xem cách tạo nhiều bản sao của một chuỗi bằng cách sử dụng toán tử nhân[*]. Python hỗ trợ một số thao tác nhất định được thực hiện trên một chuỗi, toán tử nhân là một trong số đó.Chúng ta có thể nhân hai chuỗi không?
Trước tiên, bạn cần chuyển đổi Chuỗi thành số, nhân các số đó với nhau, sau đó chuyển đổi kết quả trở lại thành Chuỗi. Bạn cần khối try-catch để xử lý các trường hợp khi t1 và m1 chứa các ký tự không phải chữ số, như "Ryan1" hoặc "mười lăm". Lưu câu trả lời nàyĐiều gì xảy ra khi bạn nhân chuỗi trong Python?
Khi bạn nhân một chuỗi với một số nguyên, Python trả về một chuỗi mới . Chuỗi mới này là chuỗi ban đầu, được lặp lại X số lần [trong đó X là giá trị của số nguyên].