Python có nhiều chức năng sẵn có cho phép bạn thực hiện các tác vụ cụ thể trên đầu vào. Nếu bạn muốn lặp lại các chữ số của một số trong Python thì trình thông dịch có chức năng cho điều đó. Trong toàn bộ hướng dẫn này, bạn sẽ biết cách lặp lại thông qua các chữ số của một số trong Python bằng các phương thức khác nhau.
Báo cáo vấn đề
Hãy nói rằng bạn có một số ‘1234567 và bạn muốn lặp lại từng chữ số trong số và in từng chữ số trên màn hình. Làm thế nào bạn có thể làm như vậy?1234567‘ and you want to iterate each digit in the number and print each of them on the screen. How you can do so?
Trong phần tiếp theo, bạn sẽ biết tất cả các phương pháp để giải quyết vấn đề này.
Phương pháp 1: Lặp qua các chữ số của một số trong python bằng hàm iter []
Phương pháp đầu tiên để lặp qua các chữ số của một số là việc sử dụng hàm iter []. Nó chấp nhận giá trị chuỗi là đối số. Do đó, trước tiên bạn phải đánh máy giá trị số nguyên và sau đó chuyển nó vào nó.
Thực hiện các dòng dưới đây của mã để lặp qua các chữ số.
integer = 1234567
for i in iter[str[integer]]:
print[i]
Đầu ra
1
2
3
4
5
6
7
Phương pháp 2: Lặp qua các chữ số sử dụng cho vòng lặp
Bạn cũng có thể lặp qua mỗi chữ số chỉ bằng cách sử dụng vòng lặp cho vòng lặp. Mã sẽ giống như phương thức trên nhưng ở đây bạn sẽ không sử dụng phương thức iter [].
Chạy các dòng dưới đây của mã.
num = 1234567
for digit in str[num]:
print[digit]
Đầu ra
1
2
3
4
5
6
7
Phương pháp 2: Lặp qua các chữ số sử dụng cho vòng lặp
Bạn cũng có thể lặp qua mỗi chữ số chỉ bằng cách sử dụng vòng lặp cho vòng lặp. Mã sẽ giống như phương thức trên nhưng ở đây bạn sẽ không sử dụng phương thức iter [].
Chạy các dòng dưới đây của mã.
num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
Đầu ra
7
6
5
4
3
2
1
Phương pháp 2: Lặp qua các chữ số sử dụng cho vòng lặp
Bạn cũng có thể lặp qua mỗi chữ số chỉ bằng cách sử dụng vòng lặp cho vòng lặp. Mã sẽ giống như phương thức trên nhưng ở đây bạn sẽ không sử dụng phương thức iter [].
Chạy các dòng dưới đây của mã.
num = 1234
for c in map[int, str[num]]:
print[c]
Đầu ra
Bạn cũng có thể lặp qua mỗi chữ số chỉ bằng cách sử dụng vòng lặp cho vòng lặp. Mã sẽ giống như phương thức trên nhưng ở đây bạn sẽ không sử dụng phương thức iter [].
Chạy các dòng dưới đây của mã.
Phương pháp 3: Lặp lại bằng cách sử dụng vòng lặp trong khi
Ở đây bạn sẽ sử dụng vòng lặp trong khi lặp lại các chữ số của số. Bên trong vòng lặp trong khi bạn sẽ sử dụng hàm divmod []. Sau đó, bạn sẽ vượt qua số đầu vào và 10 để chọn mỗi chữ số trong vòng lặp.
Bạn sẽ nhận được đầu ra dưới đây khi bạn sẽ chạy các dòng mã dưới đây.
Phương pháp 4: Sử dụng hàm map []
Bạn cũng có thể sử dụng hàm map [] để lặp qua các chữ số của một số. Hàm bản đồ [] sẽ chấp nhận tham số đầu tiên là trực tiếp và tham số thứ hai là số đầu vào được đánh máy vào chuỗi.
Đầu tiên, mất cuộc gọi đó đến
num = 1234567
for digit in str[num]:
print[digit]
0 - bạn đang chuyển đổi một chuỗi ký tự thành số nguyên, đó không phải là điều bạn muốn [bạn muốn coi mỗi ký tự là số riêng của nó]. Biến đổi:inp = int[input["Enter a number:"]]
to:
inp = input["Enter a number:"]
Bây giờ
num = 1234567
for digit in str[num]:
print[digit]
1 là một chuỗi các chữ số, bạn có thể lặp qua nó, bằng chữ số.Tiếp theo, gán một số giá trị ban đầu cho
num = 1234567
for digit in str[num]:
print[digit]
2 - khi bạn mã hóa ngay bây giờ, bạn sẽ nhận được num = 1234567
for digit in str[num]:
print[digit]
3 vì bạn không bao giờ khởi tạo nó. Có lẽ bạn muốn num = 1234567
for digit in str[num]:
print[digit]
4 trước vòng num = 1234567
for digit in str[num]:
print[digit]
5.Tiếp theo, hãy xem xét sự khác biệt giữa một ký tự và một số nguyên một lần nữa. Bây giờ bạn có:
1
2
3
4
5
6
7
0trong đó, bên cạnh dấu chấm phẩy không cần thiết [Python là một cú pháp dựa trên vết lõm], đang cố gắng tổng hợp ký tự tôi vào số nguyên n-sẽ không hoạt động! Vì vậy, điều này trở thànhcharacter i to the integer n -- that won't work! So, this becomes
1
2
3
4
5
6
7
1Để biến ký tự
num = 1234567
for digit in str[num]:
print[digit]
6 thành số nguyên num = 1234567
for digit in str[num]:
print[digit]
7, v.v. Bạn có thể lặp qua một python đối tượng?
Một python cho vòng lặp có hai thành phần: một container, trình tự hoặc máy phát có chứa hoặc mang lại các phần tử được lặp lại. Nói chung, bất kỳ đối tượng nào hỗ trợ giao thức lặp của Python đều có thể được sử dụng trong một vòng lặp. Một biến chứa từng phần tử từ container/trình tự/trình tạo.
1. Đối với vòng lặp với phạm vi
1
2
3
4
5
6
7
2Trong các bài học trước, chúng tôi đã xử lý các chương trình và điều kiện tuần tự. Thường thì chương trình cần lặp lại một số khối nhiều lần. Đó là nơi các vòng lặp có ích. Có các toán tử vòng
num = 1234567
for digit in str[num]:
print[digit]
5 và num = 1234567
for digit in str[num]:
print[digit]
9 trong Python, trong bài học này, chúng tôi đề cập đến num = 1234567
for digit in str[num]:
print[digit]
5.1
2
3
4
5
6
7
3num = 1234567
for digit in str[num]:
print[digit]
5 Vòng lặp lặp lại trên bất kỳ chuỗi nào. Chẳng hạn, bất kỳ chuỗi nào trong Python là một chuỗi các ký tự của nó, vì vậy chúng ta có thể lặp lại chúng bằng cách sử dụng num = 1234567
for digit in str[num]:
print[digit]
5:Một trường hợp sử dụng khác cho một vòng lặp là lặp lại một số biến số nguyên trong việc tăng hoặc giảm thứ tự. Một chuỗi số nguyên như vậy có thể được tạo bằng cách sử dụng hàm
1
2
3
4
5
6
7
3:1
2
3
4
5
6
7
4Bằng cách này, chúng ta có thể lặp lại một số hành động nhiều lần:
1
2
3
4
5
6
7
5Tương tự như với IF-Else, thụt lề là những gì chỉ định hướng dẫn nào được kiểm soát bởi
num = 1234567
for digit in str[num]:
print[digit]
5 và cái nào không.Phạm vi [] có thể xác định một chuỗi trống, như
num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
0 hoặc num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
1. Trong trường hợp này, for-khối sẽ không được thực thi:1
2
3
4
5
6
7
6Chúng ta hãy có ví dụ phức tạp hơn và tổng hợp các số nguyên từ 1 đến N bao quát.
1
2
3
4
5
6
7
7Hãy chú ý rằng giá trị tối đa trong phạm vi [] là
num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
2 để làm cho num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
3 bằng n trên bước cuối cùng.Để lặp lại theo trình tự giảm, chúng ta có thể sử dụng một dạng phạm vi mở rộng [] với ba đối số -
num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
4. Khi bị bỏ qua, bước này hoàn toàn bằng 1. Tuy nhiên, có thể là bất kỳ giá trị khác không. Vòng lặp luôn bao gồm start_value và loại trừ end_value trong quá trình lặp lại:1
2
3
4
5
6
7
8Quảng cáo của Google, có thể dựa trên sở thích của bạn
2. Đặt chức năng in []
Theo mặc định, hàm
num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
5 in tất cả các đối số của nó ngăn cách chúng bằng một không gian và đặt một biểu tượng mới sau nó. Hành vi này có thể được thay đổi bằng cách sử dụng các đối số từ khóa num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
6 [phân tách] và num = 1234567
while num > 0:
num, digit = divmod[num, 10]
print[digit]
7.1
2
3
4
5
6
7
9Quảng cáo của Google, có thể dựa trên sở thích của bạn