python - TypeError: can only concatenate str (not "int") to str, Firebase 数据库问题
问题描述
我是编码新手,我正在创建一个使用 firebase 注册用户数据的应用程序。我正在尝试更新创建后用户的朋友 ID 号,但出现此错误,有人可以帮我解决这个问题吗?
Python代码
friend_patch_data = '{"next_friend_id": %s}' % str(my_friend_id+1)
friend_patch_req = requests.patch("https://the-notebook-196cb.firebaseio.com/.json?auth=" + idToken,
data=friend_patch_data)
我上传的数据:
my_data = '{"Avatar": "bruh.png", "Friends": "", "Notebooks": "", "my_friend_id": %s}'% my_friend_id
我得到的错误,
TypeError:只能将str(不是“int”)连接到str
解决方案
当你分配时my_data
,你说my_friend_id
的是一个字符串,它似乎不是。
%d
在格式字符串中使用:
my_data = '{"Avatar": "bruh.png", "Friends": "", "Notebooks": "", "my_friend_id": %d}' % my_friend_id
或使用str.format():
my_data = '{{"Avatar": "bruh.png", "Friends": "", "Notebooks": "", "my_friend_id": {0}}}'.format(my_friend_id)
如果您使用的是 Python 3,则可以使用 f-strings:
my_data = f'{{"Avatar": "bruh.png", "Friends": "", "Notebooks": "", "my_friend_id": {my_friend_id}}}'
推荐阅读
- php - 如何将 IP 号码范围定义为变量
- c - 如何仅使用指针创建动态矩阵结构?
- r - 在r中将列表项输出到csv时设置正确的列名
- dart - 如何从字符串创建 Dart 函数?
- spreadsheet - 电子表格脚本 IFTTT
- java - 如何使用 Selenium Java 在文本框中验证转换后的文本
- angularjs - 为什么 angular.forEach 会被跳过,就好像它不是在做异步一样?
- python - 如果列值等于 NaN 或零,我该如何计算?
- php - 在 Laravel eloquent 中使用中间关系过滤数据透视表数据
- java - java - 如何在java中正确设置csv文件列格式?