Merge branch 'master' into io

This commit is contained in:
Zoltán Vörös 2022-01-19 19:56:44 +01:00 committed by GitHub
commit 73fcd895db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 12 additions and 13 deletions

View file

@ -387,14 +387,6 @@ MP_DEFINE_CONST_FUN_OBJ_0(ndarray_get_printoptions_obj, ndarray_get_printoptions
mp_obj_t ndarray_get_item(ndarray_obj_t *ndarray, void *array) { mp_obj_t ndarray_get_item(ndarray_obj_t *ndarray, void *array) {
// returns a proper micropython object from an array // returns a proper micropython object from an array
if(!ndarray->boolean) { if(!ndarray->boolean) {
#if ULAB_SUPPORTS_COMPLEX
if(ndarray->dtype == NDARRAY_COMPLEX) {
mp_float_t *c = (mp_float_t *)array;
mp_float_t real = *c++;
mp_float_t imag = *c;
return mp_obj_new_complex(real, imag);
}
#endif
return mp_binary_get_val_array(ndarray->dtype, array, 0); return mp_binary_get_val_array(ndarray->dtype, array, 0);
} else { } else {
if(*(uint8_t *)array) { if(*(uint8_t *)array) {
@ -735,8 +727,9 @@ ndarray_obj_t *ndarray_copy_view(ndarray_obj_t *source) {
uint8_t dtype = source->dtype; uint8_t dtype = source->dtype;
if(source->boolean) { if(source->boolean) {
dtype = NDARRAY_BOOLEAN; dtype = NDARRAY_BOOL;
} }
// printf("%d\n", dtype);
ndarray_obj_t *ndarray = ndarray_new_ndarray(source->ndim, source->shape, strides, dtype); ndarray_obj_t *ndarray = ndarray_new_ndarray(source->ndim, source->shape, strides, dtype);
ndarray_copy_array(source, ndarray, 0); ndarray_copy_array(source, ndarray, 0);
return ndarray; return ndarray;

View file

@ -9,9 +9,10 @@
* *
*/ */
#include <unistd.h>
#include <math.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <math.h>
#include "py/obj.h" #include "py/obj.h"
#include "py/runtime.h" #include "py/runtime.h"
#include "py/misc.h" #include "py/misc.h"

View file

@ -1,10 +1,15 @@
Wed, 19 Jan 2022
Sat, 8 Jan 2022
version 4.3.0 version 4.3.0
implement numpy.save, numpy.load implement numpy.save, numpy.load
Tue, 18 Jan 2022
version 4.2.1
fix ndarray_copy_view for Boolean dtypes
Fri, 14 Jan 2022 Fri, 14 Jan 2022
version 4.2.0 version 4.2.0

View file

@ -59,7 +59,7 @@ def json_to_ndarray(json_string, b64=True):
json_to_ndarray(str, b64=True) json_to_ndarray(str, b64=True)
""" """
obj = json.loads(json_string) obj = json.loads(json_string)
print(obj)
if not isinstance(obj, dict): if not isinstance(obj, dict):
raise TypeError('input argument must be a dictionary') raise TypeError('input argument must be a dictionary')
if set(obj.keys()) != {'array', 'dtype', 'shape'}: if set(obj.keys()) != {'array', 'dtype', 'shape'}: