Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

Tôi đã có các giá trị nổi trong

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
1:

p = list(swn.senti_synsets(a))
s = p[0].pos_score()
print(s)

# Output
0.0
0.0
1.0
0.0
0.25
0.25

Sau đó, tôi đã thử,

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
2 cho lỗi đối tượng 'float' không thể hiểu được. làm như thế nào ?

Giải pháp: Thật kỳ lạ khi tôi tự mình tìm thấy câu trả lời, tôi không biết nhưng đặt thứ của một chức năng riêng biệt hoạt động. `

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)

Tôi không thể tổng hợp danh sách, nhưng khi tôi đặt hàm với returnType, nó đã trả lại tổng số các số dương. Cảm ơn tất cả các bạn đã cố gắng giúp đỡ.

hỏi ngày 2 tháng 7 năm 2015 lúc 14:24Jul 2, 2015 at 14:24

Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

0

Để tổng hợp nổi từ một danh sách, một cách dễ dàng là sử dụng FSUM

import math

l=[0.0, 0.0, 1.0, 0.0, 0.25, 0.25]
math.fsum(l)

Đã trả lời ngày 31 tháng 12 năm 2019 lúc 8:58Dec 31, 2019 at 8:58

SpriggancgspriggancgSprigganCG

412 Huy hiệu bạc2 Huy hiệu đồng2 silver badges2 bronze badges

1

Bạn cũng có thể dùng:

>>> l=[0.0, 0.0, 1.0, 0.0, 0.25, 0.25]
>>> sum(map(float,l))
1.5

Như người khác đã nói,

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
3 cũng sẽ hoạt động. Tôi không biết tại sao bạn gặp lỗi với điều đó.


Một lý do có thể là danh sách của bạn là kiểu dữ liệu chuỗi. Chuyển đổi nó thành Float như:

l = map(float, l)

hoặc

l = [float(i) for i in l]

Sau đó, sử dụng

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
3 sẽ hoạt động đúng.


Chỉnh sửa: Bạn có thể chuyển đổi

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
1 thành danh sách và sau đó tổng hợp nó.

s = p[0].pos_score()
print sum(list(s))

Đã trả lời ngày 2 tháng 7 năm 2015 lúc 14:31Jul 2, 2015 at 14:31

1

values = [0.0, 0.0, 1.0, 0.0, 0.25, 0.25]

print sum(values)

Hoạt động tốt cho tôi

Đã trả lời ngày 2 tháng 7 năm 2015 lúc 14:29Jul 2, 2015 at 14:29

Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

DportologyDportologyDportology

8161 Huy hiệu vàng8 Huy hiệu bạc31 Huy hiệu đồng1 gold badge8 silver badges31 bronze badges

1

Thử cái này:

Nó thêm tất cả

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
6 vào một danh sách, sau đó in tổng.

________số 8

Đã trả lời ngày 2 tháng 7 năm 2015 lúc 14:56Jul 2, 2015 at 14:56

DOBZDOBZDobz

1.2131 Huy hiệu vàng13 Huy hiệu bạc35 Huy hiệu đồng1 gold badge13 silver badges35 bronze badges

6

Đó là bởi vì trong mã ban đầu của bạn,

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
1 không phải là điều đáng tin cậy và do đó bạn không thể sử dụng tổng trên một đối tượng không chỉ đơn theo. Nếu bạn đã thêm từng giá trị từ
for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
1 vào danh sách, bạn có thể tổng hợp danh sách để cung cấp cho bạn kết quả mà bạn đang tìm kiếm.

Không chắc chắn chức năng

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
6 hoạt động, nhưng có lẽ bạn có thể tạo và trả về kết quả danh sách từ chức năng đó?

Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

goto

7.62910 Huy hiệu vàng46 Huy hiệu bạc56 Huy hiệu Đồng10 gold badges46 silver badges56 bronze badges

Đã trả lời ngày 19 tháng 4 năm 2017 lúc 9:32Apr 19, 2017 at 9:32

Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

nỗ lực hiệu quảeffort

871 Huy hiệu bạc10 Huy hiệu đồng1 silver badge10 bronze badges

def do(*args):
    mylist_ = [float("{:.2f}".format(num)) for num in args]
    result =(sum(mylist))
    return result

print(do(23.32,45,67,54.27))

Result:

for x in token: 
sum_pos=sum_pos+posCheck(x) 
sum_neg=sum_neg+negCheck(x) 
def posCheck(a): 
p=list(swn.senti_synsets(a)) 
s = p[0].pos_score() return(s)`

def negCheck(a): p=list(swn.senti_synsets(a)) s = p[0].neg_score() return(s)
0

Hy vọng điều này có thể giúp cho bạn.

Đã trả lời ngày 19 tháng 2 năm 2018 lúc 23:27Feb 19, 2018 at 23:27

Hướng dẫn how to sum a list of floats in python - làm thế nào để tổng hợp một danh sách các float trong python

Xavi Martínezxavi MartínezXavi Martínez

2.1071 Huy hiệu vàng16 Huy hiệu bạc16 Huy hiệu đồng1 gold badge16 silver badges16 bronze badges

Bạn có thể sử dụng tổng trên phao trong Python không?

Ngoài ra, bạn có thể sử dụng sum () với bất kỳ loại python số nào khác, chẳng hạn như phao, phức tạp, thập phân.you can use sum() with any other numeric Python types, such as float , complex , decimal.

Làm thế nào để bạn tổng hợp một mảng phao?

Thêm một mảng số rất đơn giản: chỉ cần lặp qua mảng, thêm từng phần tử vào một bộ tích lũy.loop over the array, adding each element to an accumulator.

Sum có hoạt động trên phao không?

Hàm tổng () có thể thêm các số phức giống như nó được sử dụng để thực hiện một tổng số nguyên, số float hoặc kết hợp cả hai..

Làm thế nào để bạn tổng hợp các mục trong một danh sách trong Python?

Python cung cấp một tổng số hàm sẵn () tổng hợp các số trong danh sách.Cú pháp: Sum (có thể lặp lại, bắt đầu) có thể sử dụng được: Có thể là bất cứ thứ gì danh sách, bộ dữ liệu hoặc từ điển, nhưng quan trọng nhất là nó phải là số.sum(iterable, start) iterable : iterable can be anything list , tuples or dictionaries , but most importantly it should be numbers.