Mein unittestes kehrt gut zurück, aber als ich meinen Code in der Produktion ausführte, stellte ich fest, dass mein Wert mit quadratischen Klammern „verpackt“ ist. Weitere Untersuchungen zeigen, dass es unter der DF.LOC [] Werte liegt. Ich erwarte einen einzelnen Str -Wert.
# test class and test code
import pandas as pd
import numpy as np
import unittest
class myclass:
def __init__(self):
mux = pd.MultiIndex.from_arrays([
list('aaaabbbbbccddddd'),
list('tuvwtuvwtuvwtuvw')
], names=['one','two'])
temp_a = np.arange(len(mux))
str_a = [ str(a) for a in temp_a ]
self.df = pd.DataFrame({'col': str_a}, mux)
def get_aw(self):
a = self.df.loc[('a','w')].values
return a
class TestAssert(unittest.TestCase):
def test_assert(self):
myclass_obj = myclass()
result = myclass_obj.get_aw()
expect = '3'
print(type(result))
print(type(expect))
print(f'result:{result}')
print(f'expect:{expect}')
self.assertEqual(result,expect)
if __name__ == '__main__':
unittest.main(verbosity=2)
< /code>
Ergebnisse: (Ich habe erwartet, dass es fehlschlägt) < /p>
test_assert (__main__.TestAssert) ... test_code.py:18: PerformanceWarning: indexing past lexsort depth may impact performance.
a = self.df.loc[('a','w')].values
result:[['3']]
Ergebnisse: < /p>
test_assert (__main__.TestAssert) ... test_code.py:18: PerformanceWarning: indexing past lexsort depth may impact performance.
a = self.df.loc[('a','w')].values[0][0]
result:3
expect:3
ok
----------------------------------------------------------------------
Ran 1 test in 0.002s
OK
Mein unittestes kehrt gut zurück, aber als ich meinen Code in der Produktion ausführte, stellte ich fest, dass mein Wert mit quadratischen Klammern „verpackt“ ist. Weitere Untersuchungen zeigen, dass es unter der DF.LOC [] Werte liegt. Ich erwarte einen einzelnen Str -Wert.[code]# test class and test code import pandas as pd import numpy as np import unittest
class myclass: def __init__(self): mux = pd.MultiIndex.from_arrays([ list('aaaabbbbbccddddd'), list('tuvwtuvwtuvwtuvw') ], names=['one','two']) temp_a = np.arange(len(mux)) str_a = [ str(a) for a in temp_a ] self.df = pd.DataFrame({'col': str_a}, mux)
def get_aw(self): a = self.df.loc[('a','w')].values return a
class TestAssert(unittest.TestCase): def test_assert(self): myclass_obj = myclass() result = myclass_obj.get_aw() expect = '3' print(type(result)) print(type(expect)) print(f'result:{result}') print(f'expect:{expect}') self.assertEqual(result,expect)
if __name__ == '__main__': unittest.main(verbosity=2) < /code> Ergebnisse: (Ich habe erwartet, dass es fehlschlägt) < /p> test_assert (__main__.TestAssert) ... test_code.py:18: PerformanceWarning: indexing past lexsort depth may impact performance. a = self.df.loc[('a','w')].values
result:[['3']] Ergebnisse: < /p> test_assert (__main__.TestAssert) ... test_code.py:18: PerformanceWarning: indexing past lexsort depth may impact performance. a = self.df.loc[('a','w')].values[0][0]
result:3 expect:3 ok
---------------------------------------------------------------------- Ran 1 test in 0.002s
Mein unittestes kehrt gut zurück, aber als ich meinen Code in der Produktion ausführte, stellte ich fest, dass mein Wert mit quadratischen Klammern „verpackt“ ist. Weitere Untersuchungen zeigen, dass...
Ich habe ein Projekt, bei dem Benutzer häufig Annotated verwenden müssen. Um es zu vereinfachen, versuche ich, einen generischen Typ zu erstellen
T = TypeVar('T')
CustomUrl = Annotated
Ich habe eine REST -API im Spring Boot erstellt, die 4 Modelle verwaltet: Blog -Beiträge, Kommentare zu Posts, Benutzerprofilen und Rollen. Derzeit können die Blog -Beiträge nur vom Administrator...