Chúng ta có thể sử dụng phép nối để tạo một chuỗi lặp lại nhiều lần bằng cách thêm đi thêm lại chính nó, nhưng điều này có thể trở nên tẻ nhạt đối với nhiều lần lặp lại. Có phương pháp tốc ký nào để lặp lại một chuỗi nhiều lần không?
Câu trả lời
Trong Python, chúng ta có thể làm điều này bằng cách sử dụng toán tử
Hello! Hello! Hello! Hello! Hello!0 và về cơ bản là nhân một chuỗi với số lần chuỗi đó sẽ lặp lại trong một chuỗi mới được tạo
Đôi khi chúng ta cần hiển thị cùng một số hoặc chuỗi nhiều lần trong một danh sách. Chúng tôi cũng có thể tạo các số hoặc chuỗi này cho mục đích tính toán. Python cung cấp một số chức năng sẵn có có thể giúp chúng tôi đạt được điều này
Sử dụng *
Đây là phương pháp được sử dụng nhiều nhất. Ở đây chúng tôi sử dụng toán tử * sẽ tạo ra sự lặp lại của các ký tự được đề cập trước toán tử
Thí dụ
Bản thử trực tiếp
given_value ='Hello! ' repeated_value = 5*given_value print[repeated_value]
Chạy đoạn mã trên cho ta kết quả như sau
Hello! Hello! Hello! Hello! Hello!
sử dụng lặp lại
Mô-đun itertools cung cấp chức năng lặp lại. Hàm này lấy chuỗi có thể lặp lại làm tham số cùng với số lần chuỗi phải được lặp lại. Hàm mở rộng cũng được sử dụng để tạo mục tiếp theo cho danh sách chứa kết quả
Thí dụ
Bản thử trực tiếp
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]
Chạy đoạn mã trên cho ta kết quả như sau
['Hello! ', 'Hello! ', 'Hello! ', 'Hello! ', 'Hello! ']
Sử dụng vòng lặp mở rộng và for
Chúng ta cũng có thể sử dụng hàm mở rộng[] để tạo danh sách chuỗi sẽ được lặp lại bằng cách sử dụng phạm vi và vòng lặp for. Đầu tiên chúng ta khai báo một danh sách trống, sau đó tiếp tục mở rộng nó bằng cách thêm các phần tử được tạo bởi vòng lặp for. Phạm vi [] quyết định số lần vòng lặp for được thực thi
Xin chào Arshad,
Hello! Hello! Hello! Hello! Hello!1 không phải là một lệnh – đó là một mã thoát đặc biệt cho các dòng mới. Nó
chỉ hoạt động bên trong một chuỗi. bên ngoài một chuỗi đó là một lỗi cú pháp.
Khi bạn đặt var1 bên trong dấu ngoặc kép, như thế này
"var1"
không còn đề cập đến biến, nó chỉ là một chuỗi như
“Xin chào thế giới”.
Việc bạn có thể làm là nối một dòng mới vào biến
Hello! Hello! Hello! Hello! Hello!2, sau đó
lặp lại mười lần.
var1 = "Hello World"
print[10*[var1 + "\n"]]
Lưu ý rằng chúng ta cần có dấu ngoặc tròn [dấu ngoặc đơn] để đảm bảo rằng
phép nối xảy ra trước khi lặp lại. Nếu bạn viết cái này.
print[10*var1 + "\n"]
chuỗi “Xin chào thế giới” sẽ được lặp lại 10 lần và sau đó một
dòng mới sẽ được nối với nhau.
Một vấn đề với phương pháp này là có thêm một dòng mới ở cuối
mà bạn có thể không muốn. Thay vào đó chúng ta có thể làm điều này.
print["\n".join[[var1]*10]
Điều này làm là gì
Hello! Hello! Hello! Hello! Hello!
3 xây dựng một danh sách chứa “Xin chào thế giới”Hello! Hello! Hello! Hello! Hello!
4 lặp lại mười lần đó, tương đương với[var1, var1, var1, var1, var1, var1, var1, var1, var1, var1]
Hello! Hello! Hello! Hello! Hello!
5 nối mười chuỗi đó cùng với các dòng mới
giữa các mục.Và cuối cùng
0 thực hiện việc in ấnvar1 = "Hello World" print[10*[var1 + "\n"]]
Đây là một cách khác mà chúng ta có thể in một cái gì đó mười lần
for i in range[10]: print[var1]
Khi được sử dụng với một chuỗi và một số nguyên, toán tử nhân lặp lại chuỗi theo số lần đã chỉ định
Điều này in chuỗi số lần được chỉ định trên cùng một dòng
Nếu bạn cần in một số nguyên nhiều lần, hãy nhớ chuyển đổi nó thành một chuỗi trước khi sử dụng toán tử nhân
Chúng tôi đã sử dụng lớp
Hello! Hello! Hello! Hello! Hello!6 để chuyển đổi số nguyên thành chuỗi trước khi nhân nó với 4
Bạn cũng có thể sử dụng một chuỗi ký tự được định dạng để in một chuỗi nhiều lần
Các chuỗi ký tự được định dạng [chuỗi f] cho phép chúng tôi bao gồm các biểu thức bên trong chuỗi bằng cách thêm tiền tố vào chuỗi bằng
Hello! Hello! Hello! Hello! Hello!7
Đảm bảo ngắt các biểu thức trong dấu ngoặc nhọn -
Hello! Hello! Hello! Hello! Hello!8
Nếu bạn cần in một chuỗi nhiều lần trên các dòng riêng biệt, hãy thêm ký tự
Hello! Hello! Hello! Hello! Hello!1 vào chuỗi trước khi sử dụng toán tử nhân
Lưu ý rằng chúng tôi đã thêm một ký tự xuống dòng [
Hello! Hello! Hello! Hello! Hello!1] ở cuối chuỗi
Chúng tôi đặt đối số từ khóa
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]1 thành một chuỗi trống để xóa ký tự xuống dòng cuối cùng
Đối số
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]1 được in ở cuối tin nhắn. Theo mặc định,
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]1 được đặt thành ký tự xuống dòng [
Hello! Hello! Hello! Hello! Hello!1]
Chúng tôi đã thêm một ký tự xuống dòng ở cuối chuỗi, vì vậy không cần thêm một dòng mới
Một đối số thường được sử dụng khác mà hàm
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]5 nhận là
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]52
Đối số
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]52 là dấu phân cách giữa các đối số mà chúng ta chuyển đến
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]5
Theo mặc định, đối số được đặt thành khoảng trắng
Bạn cũng có thể sử dụng vòng lặp
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]55 với lớp
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]56 để in một chuỗi nhiều lần trên các dòng riêng biệt
Chúng tôi đã sử dụng lớp
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]57 để lặp 3 lần và sử dụng hàm
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]5 để in chuỗi trên mỗi lần lặp
Lớp phạm vi thường được sử dụng để lặp một số lần cụ thể trong vòng lặp
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]55 và nhận các đối số sauTênMô tả
Hello! Hello! Hello! Hello! Hello!60Một số nguyên đại diện cho phần đầu của phạm vi [mặc định là
Hello! Hello! Hello! Hello! Hello!61]
Hello! Hello! Hello! Hello! Hello!62Đi tới, nhưng không bao gồm số nguyên được cung cấp
Hello! Hello! Hello! Hello! Hello!63Dải ô sẽ bao gồm mọi N số từ
Hello! Hello! Hello! Hello! Hello!60 đến
Hello! Hello! Hello! Hello! Hello!62 [mặc định là
Hello! Hello! Hello! Hello! Hello!66]
Nếu bạn chỉ truyền một đối số duy nhất cho hàm tạo
from itertools import repeat given_value ='Hello! ' new_list=[] new_list.extend[repeat[given_value,5]] print[new_list]56, thì nó được coi là giá trị cho tham số
Hello! Hello! Hello! Hello! Hello!62