私は現在、ベクトルと平面の法線との間の角度を計算するモジュールに取り組んでいます。ネストされたリストのリスト(設定)?
いずれにせよ、平面の法線を計算する条件を満たすためには、R3に3点必要です。
リスト要素を文字列に変換することでこれを行う方法が見つかりましたが、これはコードの下流を複雑にします。次のコードブロックは、この条件を満たすことを目的としています。リストt2には文字列が含まれており、下流ではうまく機能しますが、ネストされたリスト(t1)を使用したいと考えています。
t1,t2=[],[] #B3
for i in range(0, len(s)):
t1.append([s[i][0][0],s[i][2][4]])
t2.append(s[i][0][0]+s[i][2][4])
u,j,k=list(set(t2)),[],[]
for item in u:
j.append(t2.count(item))
if len(u) == len(j):
for i in range(0, len(u)):
if j[i] >= 3:
k.append([u[i]])
#For additional clarity:
List t1 looks as follows:
[['[7,', '158,'],
['[7,', '158,'],
['[51,', '158,'],
['[51,', '158,'],
['[51,', '158,'],
['[51,', '161,'],
['[51,', '161,'],
['[51,', '161,'],
['[298,', '114,'],
['[808,', '138,'],
['[808,', '138,']...
したがってt1内に同等の要素を含む3つの以上のリストが存在する場合(例えば、[としては '[51、'、 '158、'])私はこれらを追加することを望みます。問題は、set()がネストされたリストでは機能しないことです。
方法はありますか? 乾杯
ネストされた 'tuple'の' set'に変換できますか? '設定(L2でLSTのためのタプル(LST))'あなたはタプルではなく、リストを使用したい – mgilson
。タプルは、不変であることを除いて、本質的にリストと同じです。このため、dict(およびset)キーとして使用できます。角括弧の代わりにかっこを使用してタプルを作成してください。既存のリストをタプルに変換するには、 'tuple(my_list)'を使います。 –