Đây là một bài tập Python đơn giản và mã đã hoạt động nhưng tôi đã tự hỏi, nếu phần còn lại 10 % 10
bằng không, làm thế nào tôi có thể chia một số nhất định cho 0 và nhận được thứ gì đó ngoài lỗi? Nó có lẽ là tầm thường nhưng tôi không thể nhận ra những gì đang xảy ra.
number = int[input[]]
a = number // 100
b = number // 10 % 10
c = number % 10
print[a + b + c]
Hỏi ngày 20 tháng 12 năm 2020 lúc 0:56Dec 20, 2020 at 0:56
0
Chà, bạn không thực sự chia cho Zero ở bất cứ đâu trong ví dụ đó. Nếu bạn đang đề cập đến dòng b = number // 10 % 10
, thì điều thực sự xảy ra là số đó được chia cho 10 và kết quả của điều đó được đưa vào modulo, có nghĩa là "còn lại sau khi chia cho 10". Tôi nghĩ rằng bạn đã hiểu thứ tự hoạt động sai trên dòng đó, điều này khiến bạn tin rằng sự phân chia bằng 0 có thể xảy ra. Nó không thể.
Đã trả lời ngày 20 tháng 12 năm 2020 lúc 1:06Dec 20, 2020 at 1:06
Điều quan trọng là sử dụng dấu ngoặc đơn khi làm việc với các nhà khai thác hỗn hợp vì sự ưu tiên của nhà điều hành có thể dẫn đến kết quả ngoài ý muốn. Trong Python, % và // có cùng mức độ để biểu thức được đánh giá từ trái sang phải. Tham khảo 6.17 trong tài liệu Python để biết thêm thông tin chi tiết về ưu tiên cụ thể của ngôn ngữ.
Trong mã trên của bạn, vì nó được đánh giá từ trái sang phải, sự phân chia sàn sẽ luôn xảy ra trước khi hoạt động modulo để không có ZerodivSionerror có thể xảy ra. Nhưng để trả lời câu hỏi của bạn, bạn luôn có thể sử dụng thử và bắt khối để bắt ZerodivisionError và tự mình xử lý.try and catch block to catch the ZeroDivisionError and handle it on your own.
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
Wovano
3.3065 huy hiệu vàng20 Huy hiệu bạc43 Huy hiệu đồng5 gold badges20 silver badges43 bronze badges
Đã trả lời ngày 20 tháng 12 năm 2020 lúc 1:32Dec 20, 2020 at 1:32
1
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Đọc
Examples:
Bàn luận
Output : 15
Input : n = 111
Output : 3
Cho một số và nhiệm vụ là tìm tổng số các chữ số của số này trong Python. & Nbsp; ví dụ: & nbsp; & nbsp;
Below are the methods to sum of the digits.
Method-1: Using str[] and int[] methods.: The str[] method is used to convert the number to string. The int[] method is used to convert the string digit to an integer.
Đầu vào: n = 87 & nbsp; đầu ra: 15 & nbsp; đầu vào: n = 111 & nbsp; đầu ra: 3
Python3
def
getSum[n]:
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0____11 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
3____10
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
5 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
6number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
7 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
8number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
9150
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1 1522
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 154
155
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0157
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1159
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 151
152
153
Output:
15
Phương thức-2: Sử dụng phương thức SUM [] .: Phương thức SUM [] được sử dụng để tổng số trong danh sách.The sum[] method is used to sum of numbers in the list.
Chuyển đổi số thành chuỗi bằng str [] và dải chuỗi và chuyển đổi thành danh sách số bằng phương thức dải [] và map [] Phương thức resp. Sau đó tìm tổng bằng phương thức Sum [].
Python3
def
getSum[n]:
____10
157
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
8150
____10
152
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 154
155
156
155
154
159
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0____27 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1153
159
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 151
152
153
Output:
15
Phương thức-2: Sử dụng phương thức SUM [] .: Phương thức SUM [] được sử dụng để tổng số trong danh sách.
- Chuyển đổi số thành chuỗi bằng str [] và dải chuỗi và chuyển đổi thành danh sách số bằng phương thức dải [] và map [] Phương thức resp. Sau đó tìm tổng bằng phương thức Sum [].
- ____10
15
7
2number = int[input[]] try: a = number // 100 b = number // [10 % 10] c = number % 10 print[a + b + c] except ZeroDivisionError: print["Please enter another number that's not a multiple of 10."] number = int[input[]]
8number = int[input[]] try: a = number // 100 b = number // [10 % 10] c = number % 10 print[a + b + c] except ZeroDivisionError: print["Please enter another number that's not a multiple of 10."] number = int[input[]]
15
0 - ____10
15
2
2number = int[input[]] try: a = number // 100 b = number // [10 % 10] c = number % 10 print[a + b + c] except ZeroDivisionError: print["Please enter another number that's not a multiple of 10."] number = int[input[]]
15
415
515
615
515
415
9
0____27number = int[input[]] try: a = number // 100 b = number // [10 % 10] c = number % 10 print[a + b + c] except ZeroDivisionError: print["Please enter another number that's not a multiple of 10."] number = int[input[]]
1number = int[input[]] try: a = number // 100 b = number // [10 % 10] c = number % 10 print[a + b + c] except ZeroDivisionError: print["Please enter another number that's not a multiple of 10."] number = int[input[]]
15
3- Phương pháp-3: Sử dụng cách tiếp cận chung: & nbsp;
- Nhận số
Khai báo một biến để lưu trữ tổng và đặt thành 0
Python3
def
getSum[n]:
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0____11 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
3____10
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
5 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
6number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
7 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
8number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
9150
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1 1522
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 154
155
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0157
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
0157
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
1159
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 151
152
153
Output:
15
Phương thức-2: Sử dụng phương thức SUM [] .: Phương thức SUM [] được sử dụng để tổng số trong danh sách.
Python3
Chuyển đổi số thành chuỗi bằng str [] và dải chuỗi và chuyển đổi thành danh sách số bằng phương thức dải [] và map [] Phương thức resp. Sau đó tìm tổng bằng phương thức Sum [].
____10
157
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
8150
159
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
2 151
152
number = int[input[]]
try:
a = number // 100
b = number // [10 % 10]
c = number % 10
print[a + b + c]
except ZeroDivisionError:
print["Please enter another number that's not a multiple of 10."]
number = int[input[]]
22Output:
15