Python函数--numpy.fromfunction( )

2023-05-16

@TOC

本以为fromfunction(f,(a,b))中传入f 的参数x和y分别是以左上角为原点的坐标。
今天发现并非如此。x和y分别为一个shape为(a,b)的array。如下实验所示:

def f(x,y):
    print("x:",x)
    print("y:",y)
    print("x+y:",x+y)
    print("x*y:",x*y)
    return 0
c=np.fromfunction(f,(10,10))

结果:
x: [[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
[2. 2. 2. 2. 2. 2. 2. 2. 2. 2.]
[3. 3. 3. 3. 3. 3. 3. 3. 3. 3.]
[4. 4. 4. 4. 4. 4. 4. 4. 4. 4.]
[5. 5. 5. 5. 5. 5. 5. 5. 5. 5.]
[6. 6. 6. 6. 6. 6. 6. 6. 6. 6.]
[7. 7. 7. 7. 7. 7. 7. 7. 7. 7.]
[8. 8. 8. 8. 8. 8. 8. 8. 8. 8.]
[9. 9. 9. 9. 9. 9. 9. 9. 9. 9.]]

y: [[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]]

x+y: [[ 0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
[ 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.]
[ 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.]
[ 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.]
[ 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.]
[ 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.]
[ 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.]
[ 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.]
[ 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.]]

x*y: [[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
[ 0. 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[ 0. 2. 4. 6. 8. 10. 12. 14. 16. 18.]
[ 0. 3. 6. 9. 12. 15. 18. 21. 24. 27.]
[ 0. 4. 8. 12. 16. 20. 24. 28. 32. 36.]
[ 0. 5. 10. 15. 20. 25. 30. 35. 40. 45.]
[ 0. 6. 12. 18. 24. 30. 36. 42. 48. 54.]
[ 0. 7. 14. 21. 28. 35. 42. 49. 56. 63.]
[ 0. 8. 16. 24. 32. 40. 48. 56. 64. 72.]
[ 0. 9. 18. 27. 36. 45. 54. 63. 72. 81.]]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python函数--numpy.fromfunction( ) 的相关文章

随机推荐