我想从用户输入中提取一个线性方程,并将其转换为numpy数组。
所以我接受了用户的输入并使用了:
np.array(list(linear_eq))
结果,我得到的数组看起来像这样 ['2''x''-''4''=''5']
但我希望它看起来就像 ['2x''-4''5'] 。甚至像 ['2''-4''5']
我正在谷歌搜索该怎么做半小时,却找不到答案。
请清楚解释,因为我是编程新手。
谢谢!
答案 0 :(得分:0)
您没有显示GLhalf *rawImagePixels = (GLhalf*)malloc(width * height * sizeof(GLhalf));
glPixelStorei(GL_PACK_ALIGNMENT, 2);
glReadPixels(0, 0, width, height, GL_RED_EXT, GL_HALF_FLOAT_OES, rawImagePixels);
NSData *data = [NSData dataWithBytes:rawImagePixels length:width * height * sizeof(GLhalf)];
CGDataProviderRef provider = CGDataProviderCreateWithCFData((__bridge CFDataRef)data);
CGColorSpaceRef colorspace = CGColorSpaceCreateDeviceGray();
int bitsPerComponent = 16, bitsPerPixel = 16, bytesPerRow = width * 2;
CGImageRef iref = CGImageCreate(width, height, bitsPerComponent, bitsPerPixel, bytesPerRow, colorspace, kCGImageAlphaNone|kCGBitmapByteOrder16Little, provider, NULL, NO, kCGRenderingIntentDefault);
UIImage *myImage = [UIImage imageWithCGImage:iref];
UIImageWriteToSavedPhotosAlbum(myImage, self, nil, nil);
,但我可以猜到是:
linar_eq
In [9]: eq = "2x-4=5"
应用于字符串会分解它,产生一个字符列表。
list()
该列表上的 In [10]: list(eq)
Out[10]: ['2', 'x', '-', '4', '=', '5']
不会更改任何内容,也不会使字符分组更加容易。坚持使用列表操作。
两个建议的答案遵循不同的“规则”。一个看起来像是将字符2乘以2,然后删除了'='。另一个丢弃“ x”。为什么?
np.array
您的问题没有明确说明。但是我怀疑您最好使用['2x', '-4', '5']
['2', '-4', '5']
机制来拆分原始字符串。这不是一个合并的问题。更多的是解析。