我正在尝试从列表中获取所需的项目(看起来像字典列表)。想知道是否有更好的方法来做到这一点。我觉得使用了太多拆分来获取 Gender 值。
>>> record = ['{"Name": "Jack", "Gender": "Male"}']
>>>
>>> type(record)
<class 'list'>
>>>
>>> for item in record:
... Gen = item.split(",")[1].split()[1].rstrip("}")
...
>>> print(Gen)
"Male"
>>>
谢谢,
答案 0 :(得分:3)
您拥有的是一个包含一个字符串元素的列表,它是一个 JSON 格式的对象(字典)。所以:
import 'package:image/image.dart' as IMG;
Future<void> cropSquare(String srcFilePath, String destFilePath) async {
final bytes = await File(srcFilePath).readAsBytes();
IMG.Image src = IMG.decodeImage(bytes);
// pass x and y(offset),width, height value of face bounding box you detected
IMG.Image destImage = IMG.copyCrop(src, x, y, width, height);
final png = IMG.encodePng(destImage);
await File(destFilePath).writeAsBytes(png);
}
然而,这是一个奇怪的输入结构。如果您可以控制此列表的形成方式,则应更改它,并确保避免将该字典编码为 JSON,或者——如果您以 JSON 格式接收它——在更早的阶段解析该 JSON -- 在它被包裹在那个列表之前。