Bir anahtar veri yapısının m x n x p
dizisi, float[][][]
olduğu bir kişinin Java koduyla çalışıyorum. Python'a almam gerek; Şu anda benim yaklaşım dizisi Arrays.deepToString kullanarak bir metin dosyasına kaydetmek ve sonra Python gelen bu metin dosyasını ayrıştırmaktır.Java Arrays.deepToString tarafından çıkışların dizgisi ayrıştırmak için Python regex kullanın
Txt'yi ayrıştıracak düzenli bir ifadeyi nasıl yazacağım konusunda takılıyorum.nolu nolu tüm şamandıraları, ilgili göstergeleri bilimsel gösterimde bulabilirsiniz. bunu yapmak için aşağıdaki modelini kullanın: Bu da çıkış deepToString tarafından olduğu gibi bilimsel gösterimde yüzen yakalamak için çalışıyor
float_pat = r'\d\.\d*(?:E-\d+)?'
. Değerlerin hepsi pozitiftir, çünkü olasılıklardır. Evet, sayıları nasıl yakaladığımla ilgili hiçbir sorunum yok.
Ne yapamıyorum ama yapmak istediğim şey, sol ve sağ köşeli parantez içine alınmış herhangi bir sayıdaki döngüleri düzenli olarak aramaktır. Denedim bu: Ben bir veya daha fazla bir virgül ardından şamandıra formatının dava ve köşeli parantez bir boşluk bulmaya çalışıyorum
list_of_floats_pat = r'\[(?:\d\.\d*(?:E-\d+)?),)+\]'
. Ama bu []
döndürür. Anlamadığımdan emin değilim. İşte
[[[0.6453525160688715, 0.15620941152962334, 0.1874313118193626, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 0.01050721017750691, 9.991008092716556E-5], [0.5904776610141782, 0.18175460267577365, 9.991008092716556E-5, 0.22716827582448523, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5]]]
regex iki maç dönmek için ne isteyeyim: sadece o
0.6453525160688715, 0.15620941152962334, 0.1874313118193626, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 0.01050721017750691, 9.991008092716556E-5
ve
0.5904776610141782, 0.18175460267577365, 9.991008092716556E-5, 0.22716827582448523, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5, 9.991008092716556E-5
elimden şerit ve bölünmüş dizeleri olarak ayrıştırma.
Tüm parantez dizinlerini bulduğum bir çözüm buldum. Ama regeeksler hakkında anlamadığım şeyi bilmek isterim.
bir çekicilik gibi çalıştı yardımcı oldu.Cevabın “regex kullanmayın çünkü daha az acı verici bir şey olduğu” hissine kapıldım. Ty. – NickleDave