Python中文
首页
教程
问答
标签
搜索
登录
注册
Python TypeError:字符串索引必须是整数
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有下面的Python代码</p> <pre><code>from flask import Flask, jsonify, json app = Flask(__name__) with open('C:/test.json', encoding="latin-1") as f: <a href="https://www.cnpython.com/pypi/dataset" class="inner-link">dataset</a> = json.loads(f.read()) @app.route('/api/PDL/<string:dataset_identifier>', methods=['GET']) def get_task(dataset_identifier): global dataset dataset = [dataset for dataset in dataset if dataset['identifier'] == dataset_identifier] if len(task) == 0: abort(404) return jsonify({'dataset': dataset}) if __name__ == '__main__': app.run(debug=True) </code></pre> <p>在测试.json看起来像这样:</p> ^{pr2}$ <p>当我像这样在URL中传递变量时:<code>http://127.0.0.1:5000/api/PDL/1403</code> 我得到以下错误:<code>TypeError: string indices must be integers</code></p> <p>知道“identifier”字段是一个字符串,我将在URL中传递以下内容:</p> <pre><code>http://127.0.0.1:5000/api/PDL/"US-XYZ-ABC-36" http://127.0.0.1:5000/api/PDL/US-XYZ-ABC-36 </code></pre> <p>我一直收到以下错误:</p> <pre><code>TypeError: string indices must be integers </code></pre> <p>你知道我遗漏了什么吗?我是Python新手!在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>问题是您试图迭代字典而不是其中的数据源列表。因此,您将遍历字典的键,这些键是字符串。如果你用上面提到的变量的名字,或者你会用同样的名字。在</p> <p>这对我很有效:</p> <pre><code>[ds for ds in dataset['dataset'] if ds['identifier'] == dataset_identifier] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何合并多个PDF文件?
8 回答
如何合并多个xarray数据变量及其坐标?
5 回答
如何合并多个列中具有重复值的行
6 回答
如何合并多个唯一id
6 回答
如何合并多个图纸并使用图纸名称的名称重命名列名?
8 回答
如何合并多个字典并添加同一个键的值?(Python)
9 回答
如何合并多个搜索结果文件(pkl)以将它们全部打印在一起?
4 回答
如何合并多个数据帧
9 回答
如何合并多个数据帧并使用Pandas为假人添加列?
6 回答
如何合并多个数据帧并按时间戳排序
2 回答
如何合并多个数据帧的列表并用另一个lis标记每列
8 回答
如何合并多个数据框中的列
5 回答
如何合并多个文件?
1 回答
如何合并多个查询集?
10 回答
如何合并多个绘图?
8 回答
如何合并多个词典
3 回答
如何合并多个输入数据集(数据帧)?
10 回答
如何合并多条记录中拆分的文本行
10 回答
如何合并多索引列datafram
10 回答
如何合并多级(即多索引)数据帧?
6 回答