【问题标题】:Write coordinates to file from 4 numpy arrays Python从 4 个 numpy 数组 Python 将坐标写入文件
【发布时间】:2017-06-11 15:56:32
【问题描述】:

有 4 个 numpy 矩阵,例如,3x3 坐标:

Xg [[-0.5  0.3  1.1]
    [-0.5  0.3  1.1]
    [-0.5  0.3  1.1]]

Yg [[-0.5 -0.5 -0.5]
    [ 0.3  0.3  0.3]
    [ 1.1  1.1  1.1]]

 u [[ 1.  1.  1.]
    [ 1.  1.  1.]
    [ 1.  1.  1.]]

 v [[ 1.03793  0.25065 -0.28944]
    [-0.21591 -0.93072 -0.10047]
    [-0.08591 -0.11284 -0.06082]]

如何在文件中写入坐标:

# in file should be ", {{" x_coordinate","y_coordinate"},{"u_coordinate","v_coordinate"}}")
 file = open("coordinates.txt", "w")
 file.write(",{{" + x + "," + y + "},{" + u + "," + v + "}}")

 #Output
  ,{{-0.5,-0.5},{1,1.03793}}, {{0.3,-0.5},{1,0.25065}}, {{1.1,-0.5},{1,-0.28944}},...

【问题讨论】:

标签: python file numpy


【解决方案1】:

你可以做嵌套的 for 循环,像这样:

 X = [[-0.5, 0.3, 1.1],
      [-0.5, 0.3, 1.1],
      [-0.5, 0.3, 1.1]]

Y = [[-0.5, -0.5, -0.5],
      [0.3, 0.3, 0.3],
      [1.1, 1.1, 1.1]]

U = [[1, 1, 1, ],
     [1, 1, 1, ],
     [1, 1, 1, ]]

V = [[1.03793, 0.25065, -0.28944],
     [-0.21591, -0.93072, -0.10047],
     [-0.08591, -0.11284, -0.06082]]

with open("coordinates.txt", "w") as f:
    for i in range(3):
        for j in range(3):
            f.write("{{{0},{1}}}, {{{2}, {3}}}\n".format(X[j][i], Y[j][i],  U[j][i], V[j][i]))

这给了

{-0.5,-0.5}, {1, 1.03793}
{-0.5,0.3}, {1, -0.21591}
{-0.5,1.1}, {1, -0.08591}
{0.3,-0.5}, {1, 0.25065}
{0.3,0.3}, {1, -0.93072}
{0.3,1.1}, {1, -0.11284}
{1.1,-0.5}, {1, -0.28944}
{1.1,0.3}, {1, -0.10047}
{1.1,1.1}, {1, -0.06082}

【讨论】:

  • 没错,但有必要,{{x,y},{u,v}} 将放在括号中 { {},{} }
  • 我已经更新了格式以匹配,你可以多弄乱它以获得你想要的。
  • 太棒了!谢谢!
  • 如果它有帮助别忘了给它一个upvote :)
  • {{{{{0},{1}}}, {{{2}, {3}}}}}
猜你喜欢
  • 2017-04-11
  • 1970-01-01
  • 2023-03-27
  • 2012-06-07
  • 2013-05-22
  • 2015-11-12
  • 2022-11-17
  • 1970-01-01
  • 2014-09-12
相关资源
最近更新 更多