为什么此代码不打印单个索引?

时间:2018-07-17 10:47:46

标签: python-3.x numpy printing

我们从excel文件中提取了eng_stress和eng_strain数组

eng_stress = np.array(eng_stress)
eng_strain = np.array(strain_percent / 100)

eng_strain = eng_strain + 1
true_stress = np.multiply(eng_stress, eng_strain)
true_strain = np.log(eng_strain)
print(true_stress[10])

当我尝试访问某个索引时,会发生类似以下的情况,而不是单个结果。

[466.12834181 466.2044319  466.27916323 466.35480041 466.43043758
 466.50562183 466.58125901 466.65689618 466.73208043 466.80771761
 466.8838077  466.95853903 467.03508204 467.10981338 467.18545055
 467.26108772 467.33627198 467.41145623 467.48709341 467.56273058
 467.63882067 467.71355201 467.78918918 467.86482635 467.94001061
 468.0161007  468.09083203 468.16692212 468.2425593  468.31774355
 468.39292781 468.4690179  468.54374923 468.61983932 468.69502358
 468.77020783 468.84629792 468.92148218 468.99666643 469.07275652
 469.14794078 469.22357795 469.29966804 469.37439938 469.45048947
 469.52522081 469.6013109  469.67649515 469.75167941 469.82731658
 469.90295375 469.97813801 470.05377518 470.12895943 470.20459661
 470.2806867  470.35541803 470.43196104 470.50669238 470.58232955
 470.65796672 470.7336039  470.80833523 470.88442532 470.95960958
 471.03524675 471.11088392 471.18606818 471.26170535 471.33688961
 471.41252678 471.48771103 471.56380112 471.63898538 471.71507547
 471.78980681 471.8658969  471.94108115 472.01626541 472.09190258
 472.16753975 472.24272401 472.3188141  472.39354543 472.46918261
 472.5452727  472.62000403 472.69654704 472.77127838 472.84736847
 472.92209981 472.99773698 473.07337415 473.14901132 473.22419558
 473.30028567 473.37501701 473.45065418 473.52629135 473.60102269
 473.6775657  473.75229703 473.82884004 473.9040243  473.97920855
 474.05439281 474.1304829  474.20521423 474.28130432 474.35648858
 474.43167283 474.50776292 474.58294718 474.65813143 474.73376861
 474.80940578 474.88459003 474.96113304 475.03586438 475.11195447
 475.18668581 475.2627759  475.33796015 475.41314441 475.48878158
 475.56441875 475.63960301 475.7156931  475.79087735 475.86606161
 475.9421517  476.01688303 476.09342604 476.16815738 476.24379455
 476.31943172 476.3950689  476.46980023 476.54589032 476.62107458
 476.69716467 476.77234892 476.84753318 476.92317035 476.99835461
 477.0744447  477.14962895 477.22526612 477.30045038 477.37654047
 477.45127181 477.5273619  477.60209323 477.67773041 477.75336758
 477.82855183 477.90464192 477.9802791  478.05501043 478.13064761
 478.20628478 478.28146903 478.35801204 478.43274338 478.50883347
 478.58356481 478.65920198 478.73483915 478.81002341 478.88566058
 478.96175067 479.03648201 479.1125721  479.18775635 479.26294061
 479.3390307  479.41376203 479.48985212 479.5650363......... 532]

2 个答案:

答案 0 :(得分:2)

也许eng_stress是2D数组?

尝试:

print(eng_stress.shape)

找出要使用的数组的形状:)

如果数组的形状为(X,1),则可能方向错误,可以通过将代码更改为以下内容来快速修复:

eng_stress = np.array(eng_stress).T[0]
eng_strain = np.array(strain_percent / 100)

eng_strain = eng_strain + 1
true_stress = np.multiply(eng_stress, eng_strain)
true_strain = np.log(eng_strain)
print(true_stress[10])

答案 1 :(得分:0)

您的numpy数组可能是二维的。这就是为什么它要打印一个数组而不是一个值。要访问列x的单个值,请尝试使用print(true_stress [10] [x])。

您可以做的另一件事是将两个1D numpy数组相乘。在这种情况下,您将获得一个值。