Đối tượng float tổng của Python không thể lặp lại

Tôi không thấy lỗi, nhưng tôi không coi dòng này. [nếu line_tax. tipo_afectacion_isc. mã trong ["01","02","03"]. ]

cho dòng trong tự. hóa_đơn_dòng_id

cho line_tax trong dòng. hóa đơn_dòng_thuế_ids

nếu line_tax. tipo_afectacion_isc. mã trong ["01","02","03"]

bản thân. tổng_isc = tổng [dòng. giá_tổng phụ*dòng. hóa đơn_dòng_thuế_ids. lượng/100] nếu len[dòng. bill_line_tax_ids]>0 khác Sai

Danh sách ban đầu là. ['4. 5', '7. 8', '9. 8', '10. 3'] Tổng của danh sách chuỗi float. 32. 400000000000006 Chú ý đam mê. Củng cố nền tảng của bạn với Khóa học nền tảng lập trình Python và tìm hiểu kiến ​​thức cơ bản

Danh sách tổng Python trong khi vòng lặp. Vấn đề. Làm cách nào bạn có thể tính tổng tất cả các phần tử danh sách bằng cách sử dụng vòng lặp while [không tính tổng[]]? . Tạo một biến tổng hợp và lặp lại thêm một phần tử khác từ danh sách. Mã số. Đoạn mã sau cho biết cách tính tổng tất cả các giá trị số trong danh sách Python mà không cần sử dụng hàm sum[]

Vì vậy, bây giờ hãy lặp qua danh sách [sử dụng liệt kê như được đề xuất ở trên] và chuyển đổi từng phần tử thành float, bình phương nó bằng toán học. pow và lưu nó trở lại trong cùng một danh sách. Bạn có thể chuyển danh sách sang sum[] để lấy tổng số của mình

Sự hiện diện của phương thức ma thuật __iter__ là thứ làm cho một đối tượng có thể lặp lại. Từ bài viết trên, chúng ta có thể kết luận rằng phương thức __iter__ không có trong đối tượng float. Trong khi nó hiện diện trong đối tượng danh sách. Do đó, float không phải là một đối tượng có thể lặp lại và danh sách là một đối tượng có thể lặp lại

Codecademy là cách dễ nhất để học cách viết mã. Đó là tương tác, thú vị và bạn có thể làm điều đó với bạn bè của mình

Nếu bạn muốn sửa đổi giá trị float trong danh sách các giá trị float, bạn nên có các đối tượng có thể lặp lại, chẳng hạn như danh sách, mảng, tập hợp, v.v. , tạo một đối tượng có thể lặp lại và lưu trữ tất cả các giá trị float, sau đó giá trị float có thể được truy cập bằng cách sử dụng chỉ mục trong bộ sưu tập

đầu ra. Tổng của tất cả các phần tử trong danh sách đã cho. 74. chú ý đam mê. Củng cố nền tảng của bạn với Khóa học nền tảng lập trình Python và tìm hiểu kiến ​​thức cơ bản. Để bắt đầu, hãy chuẩn bị cho cuộc phỏng vấn của bạn Nâng cao các khái niệm về Cấu trúc dữ liệu của bạn với Khóa học Python DS

3. 1. Liệt kê tổng Đối với vấn đề này, Codio sẽ chuyển vào một danh sách các số nguyên. Viết mã để cộng tất cả các số này lại với nhau và in ra kết quả. Lưu ý khi làm bài toán này, rằng trong dòng 3, các số đang được điền bởi Codio

Duyệt các câu hỏi khác được gắn thẻ danh sách python python-2. 7 tổng hoặc đặt câu hỏi của riêng bạn. Tràn ngập Blog Tràn ngập #45. Cái mà chúng ta gọi là CI/CD thực ra chỉ là CI

Phương pháp số 1. Sử dụng hàm sum[] + float[] + Generator Vấn đề này có thể được giải quyết bằng cách sử dụng hàm sum, trong đó trước tiên chúng ta chuyển đổi các chuỗi thành float và sau đó chuyển logic này vào các hàm trong hàm sum tương ứng

Nó sử dụng tổng biến float cục bộ để tích lũy tổng số đang chạy của tất cả các phần tử trong mảng flt_arr. Thói quen này đơn giản, dễ hiểu và thường cho kết quả xấu. Vấn đề là phép cộng các số dấu phẩy động khác với phép cộng các số nguyên

Chương trình C để cộng hai số float. Nếu bạn đang tìm kiếm chương trình cộng hai số tự nhiên trong C, thì trong hướng dẫn này, chúng tôi sẽ giúp bạn tìm hiểu cách viết một chương trình C để cộng hai số tự nhiên

Danh sách ban đầu là. [6. 1, 7. 2, 3. 3, 9. 4, 10. 6, 15. 7] Giá trị trung bình của các phần tử danh sách float là. số 8. 716666666666667 Người đam mê chú ý. Củng cố nền tảng của bạn với Khóa học nền tảng lập trình Python và tìm hiểu kiến ​​thức cơ bản

Chương trình C nhân hai số dấu phẩy động Trong ví dụ này, tích của hai số dấu phẩy động do người dùng nhập vào được tính và in ra màn hình

Tôi gặp sự cố này cũng như tôi cũng đang cố gắng sử dụng hàm tổng. Bạn phải viết mã để xây dựng tổng cộng… 13/11 đề cập đến điều này

“tổng += giá cũng giống như tổng = tổng + giá. Đánh giá phía bên tay phải lấy các giá trị của các biến đó, thêm các giá trị đó và sau đó lưu lại vào biến tổng. ”

Vì vậy, trước tiên bạn phải đặt tổng = 0 và sau đó bạn chỉ có thể in tổng mà không cần sử dụng tổng

Trong hướng dẫn này, chúng tôi nói về ý nghĩa của lỗi này và lý do tại sao bạn có thể gặp phải nó. Chúng tôi đi qua một ví dụ để giúp bạn hiểu cách giải quyết lỗi này trong mã của bạn

Tìm trận đấu Bootcamp của bạn

  • Career Karma kết hợp bạn với các bootcamp công nghệ hàng đầu
  • Truy cập học bổng độc quyền và các khóa học chuẩn bị
Chọn sở thích của bạn
Tên đầu tiên

Họ

E-mail

Số điện thoại


Bằng cách tiếp tục, bạn đồng ý với Điều khoản dịch vụ và Chính sách quyền riêng tư của chúng tôi và bạn đồng ý nhận các ưu đãi và cơ hội từ Career Karma qua điện thoại, tin nhắn văn bản và email

LoạiLỗi. đối tượng 'phao' không thể lặp lại

Các đối tượng có thể lặp lại bao gồm danh sách, chuỗi, bộ dữ liệu và từ điển. Khi bạn chạy vòng lặp for trên các kiểu dữ liệu này, từng giá trị trong đối tượng sẽ được trả về từng giá trị một

Các số, chẳng hạn như số nguyên và dấu phẩy động, không thể lặp lại. Không có phần tử nào trong số nguyên hoặc dấu phẩy động có thể được trả về trong một vòng lặp

Kết quả của “TypeError. Lỗi ‘float’ object not iterable” thường là cố gắng sử dụng một số để báo cho vòng lặp for thực thi bao nhiêu lần thay vì sử dụng câu lệnh range[]

Một kịch bản ví dụ

Ở đây, chúng ta viết chương trình tính các thừa số của một số. Để bắt đầu, chúng tôi yêu cầu người dùng chèn một số có thừa số mà họ muốn tính toán

factor = float[input["Enter a number: "]]

Phương thức input[] trả về một chuỗi. Chúng ta không thể thực hiện các phép toán trên một chuỗi. Chúng tôi đã sử dụng phương thức float[] để chuyển đổi giá trị được trả về bởi input[] thành một số dấu phẩy động để chúng tôi có thể sử dụng nó trong một phép toán

Tiếp theo, chúng tôi viết một vòng lặp for tính toán các thừa số của số của chúng tôi

for n in factor:
	if factor % n == 0:
		print["{} is a factor of {}.".format[factor, n]]

Vòng lặp này sẽ đi qua mọi số cho đến khi đạt đến "hệ số"

» THÊM.   Lỗi cú pháp Python. ký tự không mong muốn sau ký tự tiếp tục dòng Giải pháp

Vòng lặp này sử dụng toán tử modulo để kiểm tra xem còn dư sau khi chia thừa số cho “n” hay không, đây là số trong một lần lặp của vòng lặp của chúng ta. Nếu có một phần còn lại, "n" không phải là một yếu tố. Nếu có phần còn lại, câu lệnh “if” của chúng tôi sẽ thực thi và in một thông báo tới bảng điều khiển

Chạy mã của chúng tôi và xem điều gì sẽ xảy ra

Enter a number: 8
Traceback [most recent call last]:
  File "main.py", line 3, in 
	for n in factor:
TypeError: 'float' object is not iterable

Mã của chúng tôi trả về TypeError

Giải pháp

Trong ví dụ của chúng tôi ở trên, chúng tôi đã cố gắng lặp lại "yếu tố", đó là một số float. Chúng tôi không thể lặp lại một số dấu phẩy động trong vòng lặp for. Thay vào đó, chúng ta nên lặp lại một dãy số từ 1 đến số có thừa số mà chúng ta muốn tính toán

Để sửa mã của chúng tôi, chúng tôi cần sử dụng câu lệnh range[]. Câu lệnh range[] tạo ra một danh sách các số trong một phạm vi xác định mà vòng lặp for có thể lặp lại. Hãy sửa lại vòng lặp for của chúng ta để sử dụng câu lệnh range[]

for n in range[1, int[factor] + 1]:
	if factor % n == 0:
		print["{} is a factor of {}.".format[factor, n]]

Câu lệnh range[] của chúng tôi tạo ra một danh sách các số từ một đến giá trị của “thừa số” cộng với một

Chúng tôi đã thêm 1 vào đầu trên của phạm vi để số "yếu tố" của chúng tôi được coi là một yếu tố. Vòng lặp for của chúng ta sau đó có thể lặp qua danh sách này. Chúng tôi đã chuyển đổi "yếu tố" thành một số nguyên trong mã của mình vì câu lệnh range[] không chấp nhận số dấu phẩy động

Chạy lại mã của chúng tôi và xem điều gì sẽ xảy ra

8.0 is a factor of 1.
8.0 is a factor of 2.
8.0 is a factor of 4.
8.0 is a factor of 8.

Mã của chúng tôi trả về thành công danh sách tất cả các thừa số của số mà chúng tôi đã chèn vào chương trình của mình

» THÊM.   Lỗi giá trị Python. quá nhiều giá trị để giải nén [dự kiến ​​là 2] Giải pháp

Phần kết luận

Python “TypeError. Lỗi đối tượng 'float' không thể lặp lại" xảy ra khi bạn cố gắng lặp lại một số dấu phẩy động như thể đó là một đối tượng có thể lặp lại, chẳng hạn như danh sách hoặc từ điển

Để giải quyết lỗi này, hãy sử dụng câu lệnh range[] nếu bạn muốn lặp lại một số. Một câu lệnh phạm vi tạo ra một danh sách các số trong một phạm vi nhất định mà vòng lặp for có thể lặp lại

Bây giờ bạn đã sẵn sàng sửa lỗi Python phổ biến này trong mã của mình



Về chúng tôi. Career Karma là một nền tảng được thiết kế để giúp người tìm việc tìm kiếm, nghiên cứu và kết nối với các chương trình đào tạo việc làm để thăng tiến trong sự nghiệp của họ. Tìm hiểu về ấn phẩm CK

Chủ Đề