python - 超出最大允许尺寸
问题描述
我正在尝试根据宇宙的质量用 pi 和地球在海平面的引力常数转换为二进制来制作一幅画。我已经完成了数学计算,我有正确的尺寸,它应该只小于一兆字节的内存,但我遇到了最大允许尺寸超出值错误。
这是代码:
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import numpy as np
boshi = 123456789098765432135790864234579086542098765432135321 # universal mass
genesis = boshi ** 31467 # padding
artifice = np.binary_repr(genesis) # formatting
A = int(artifice)
D = np.array(A).reshape(A, (1348, 4117))
plt.imsave('hello_world.png', D, cmap=cm.gray) # save image
我一直遇到错误D = np.array...
,也许我的重塑太大但它只比 4k 大一点。似乎这对于 gpu 增强的 colab 应该没问题。也不会在我的家用机器上运行,但出现相同的错误。这会用更多的内存来解决吗?
解决方案
我无法重现您的问题,因为这条线A = int(artifice)
就像永远一样。我将其替换为 ,for
循环以自行转换每个数字。然后代码工作并产生了所需的图像。
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import numpy as np
boshi = 123456789098765432135790864234579086542098765432135321
genesis = boshi ** 31467
artifice = np.binary_repr(genesis)
D = np.zeros((1348, 4117), dtype=int)
for i, val in enumerate(D):
D[i] = int(artifice[i])
plt.imsave('hello_world.png', D, cmap=cm.gray)
推荐阅读
- php - 连接 MySQL 失败:服务器向客户端发送未知字符集。请向开发人员报告 - SamplePage.php
- javascript - TypeScript 中最初未定义的变量的正确类型是什么?
- node.js - Swagger-ui 2.0 路径没有从顶部获得承载授权
- javascript - 当我包含完美的滚动条时,导航抽屉在短时间内可见
- javascript - 有没有办法在 NUXT/Vue 中获取 URL 中的最后一位数字
- python - 如何从 Tkinter Text Widget 调用 None 输出作为 IF 参数?
- java - JPA 不在本地 postgreSQL 数据库中创建复合表
- arrays - 将大矩阵转换为 numpy 数组后出现总线错误
- python - 使用带有空 GPU 的 pytorch 时出现 GPU 内存错误
- javascript - 为什么 vscode IntelliSense 只有在输入 .default. 后才能工作?