为了保留一些数据,我使用mysql作为数据库。我需要存储浮点数的数组,但我没有设法正确处理它,所以我决定将它们存储为字符串,以为一旦我从数据库中读取它们,我就将它们恢复为浮点数数组。>
因此,有两个问题: 1.有没有更好的方法来存储这些? 2.如何转换字符串数组,例如:
Outp = '[0.0, 0.22532551050405566, 0.32132351221384514, 8.329281012428868e-18, 0.012183960426492089, 0.14915942181052608, 0.0, 0.2920075950450811]'
我尝试使用numpy对象,列表和浮点数进行多种操作。没有成功,他们似乎都将变量作为单个项而不是列表来解决。
寻找一种好方法,既可以将其从数据库中读取时以浮动方式保存到数据库中,又可以将其转换为浮动方式。
答案 0 :(得分:0)
您可以使用ast.literal_eval()
import { Component } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
})
export class AppComponent {
title = 'my-tool';
user = { id : 1, name : "Hello"};
getData() {
this.http.get('http://localhost:1025/temp/route1', JSON.stringify(this.user), {})
.subscribe(data => {
console.log(data);
});
}
}
但是,最好规范化您的表模式,因为用逗号分隔的列表很难在数据库中使用。参见Is storing a delimited list in a database column really that bad?