python-3.x - 如何在使用 abs 后添加 str 文本(+ 的不支持的操作数类型:'float' 和 'str')
问题描述
使用 abs 后我无法添加 str 文本,因为它给了我一个错误。我如何在打印信息的末尾添加“kg”。
这是给蟒蛇的。
for z in range(1, 4):
if weights_array[z - 1] > new_weights_array[z - 1]:
print(names_array[z - 1],
'Your weight down by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1] + 'kg')))
elif weights_array[z - 1] < new_weights_array[z - 1]:
print(names_array[z - 1],
'Your weight went up by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1] + 'kg')))
else:
print(names_array[z - 1], 'Your weight stayed the same')
'你的体重下降:' + str(abs(weights_array[z - 1] - new_weights_array[z - 1] + 'kg'))) TypeError: +: 'float' 和 'str' 不支持的操作数类型
我希望它在我的打印语句末尾添加“kg”
解决方案
检查括号的位置:
print(names_array[z - 1], 'Your weight down by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1])) + 'kg')
和
'Your weight went up by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1])) + 'kg')
完整代码:
weights_array = [55,82,75,102]
new_weights_array = [60,79,76,95]
names_array = ['ana', 'john', 'david', 'mark']
for z in range(1, 4):
if weights_array[z - 1] > new_weights_array[z - 1]:
print(names_array[z - 1], 'Your weight down by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1])) + 'kg')
elif weights_array[z - 1] < new_weights_array[z - 1]:
print(names_array[z - 1],
'Your weight went up by: ' + str(abs(weights_array[z - 1] - new_weights_array[z - 1])) + 'kg')
else:
print(names_array[z - 1], 'Your weight stayed the same')
输出:
ana Your weight went up by: 5kg
john Your weight down by: 3kg
david Your weight went up by: 1kg
笔记:
我建议以这种方式打印:
print ('{}, Your weight down by: {} kg'.format(names_array[z - 1],abs(weights_array[z - 1] - new_weights_array[z - 1]) ))
基本格式
简单的位置格式可能是最常见的用例。
Old '%s %s' % ('one', 'two') New '{} {}'.format('one', 'two') Output one two Old '%d %d' % (1, 2) New '{} {}'.format(1, 2) Output 1 2
此页面上的所有示例都可以使用 Python 2.7、3.2、3.3、3.4 和 3.5 开箱即用,无需任何其他库:
推荐阅读
- assembly - 将浮点寄存器值加载到 Arm 和 Arm64 上的 C 变量
- java - 如何在多线程聊天客户端中为客户端提供用户名
- ajax - 为什么我的 laravel Passport Auth 在浏览器中不起作用?
- java - 如何查找 Hashmap (Java) 的键/值类
- angular - 在解析服务之前加载角度组件
- go - 与 http 服务器同时调用函数
- python - 如何找出 .shp 或 .shx shapefile 中索引的含义?
- python - 使用 scrapy 和 pyquery 登录 Stackoverflow,但无法进行进一步抓取
- python - 使用字典函数时在 Python 中解包的值太多(预期为 2)
- javascript - 如何根据浏览器宽度更改 SVG?