Dường như bạn muốn sử dụng tham số bước của chức năng tầm xa. Từ tài liệu:
phạm vi (bắt đầu, dừng [, bước]) Đây là một chức năng linh hoạt để tạo ra danh sách có chứa các phép tính số học. Nó thường được sử dụng trong các vòng . Các đối số phải là số nguyên đơn giản. Nếu đối số bước là bỏ qua, nó mặc định là 1. Nếu đối số bắt đầu bị bỏ qua, nó mặc định là 0. Biểu mẫu đầy đủ trả về danh sách các số nguyên đơn giản [bắt đầu, bắt đầu + bước, bắt đầu + 2 * bước,. ..]. Nếu bước là dương, phần tử cuối cùng là bước khởi đầu + i * lớn nhất nhỏ hơn điểm dừng; nếu bước là âm, phần tử cuối cùng là bước bắt đầu nhỏ nhất + i * lớn hơn hơn điểm dừng. bước không được bằng không (hoặc giá trị ValueError được nâng lên). Ví dụ:
>>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11) [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5) [0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3) [0, 3, 6, 9]
>>> range(0, -10, -1) [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0) []
>>> range(1, 0) []
Trong trường hợp của bạn để có được [0,2,4] bạn có thể sử dụng:
range(0,6,2)
HOẶC trong trường hợp của bạn khi là một var:
idx = None
for i in range(len(str1)):
if idx and i < idx:
continue
for j in range(len(str2)):
if str1[i+j] != str2[j]:
break
else:
idx = i+j
Nó không phải là rất rõ ràng những gì bạn thực sự cần - cung cấp cho chúng tôi với trường hợp thực tế và chúng tôi sẽ trả lời bạn.Trong bất kỳ trường hợp nào từ mẫu của bạn thì không rõ lý do tại sao bạn cần đặt i> sau đó 9 - ý tôi là vì lý do nào bạn cần tăng lên ở cuối số –
tôi đã đơn giản hóa câu hỏi của tôi – runcode
Tôi vẫn chưa rõ ràng để có được 0,2, 4 bạn có thể sử dụng phạm vi (0,6,2) –