0
    client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    client_socket.connect((HOST,PORT))

    screen_width = 0
    screen_height = 0

    while True:
        client_socket.send("loc\n")
        data = client_socket.recv(8192)
        pos_coordinates = data.split()

        if(not(pos_coordinates[-1] == "eom" and pos_coordinates[0] == "start")):
            continue

        if (screenw != int(pos_coordinates[2])):
            screenw = int(pos_coordinates[2])
            screenh = int(pos_coordinates[3])

        blalba(pos_coordinates)

3 つの pos_coordinates リスト値の平均を取得するにはどうすればよいですか? たとえば、pos_coordinates[8] に値 345 が含まれている場合、その値の平均を取得し、平均値を使用したいと考えています。これを行う理由は、カメラで検出された画像からノイズが発生しているためです。これを行う最善の方法は、値を取得するために値の平均を取得することだと思いました。これを行う方法の例はありますか?

4

1 に答える 1

0

リスト全体の平均を取得するため。

average = float(sum(pos_coordinates))/len(pos_coordinates)

サブセットの平均だけを取得したい場合は、スライスを使用してください。

subset = pos_coordinates[3:9]
average = float(sum(subset))/len(subset)

Python 3.x では、float正確な除算を行うために明示的な変換は不要になりました。

于 2012-09-30T06:29:13.693 に答える