首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有用户输入的打印数学:无法隐式地将浮动转换为str

具有用户输入的打印数学:无法隐式地将浮动转换为str
EN

Stack Overflow用户
提问于 2016-07-17 18:41:46
回答 4查看 89关注 0票数 1

下面是代码:

代码语言:javascript
复制
import time
time.sleep(0.7)

while True:
    print("Enter the word 'quit' to quit the calculator :(")
    print("Enter the word 'freenet' to enroll the SSHcrack")
    user_input = input(": ")

    if user_input == "quit":
        break
elif user_input == "freenet":
    num1 = float(input("Enter a Port to Crack:"))
    num2 = input("Enter a Network Name")
    num3 = float(input("Enter an IP-Address,(without symbols!):"))
    result = num3 / num1
    result2 = result / 13
    print("Injectable SSH "+ result2 +"for the Network "+num2)

当然,这只是一个计算器(我只添加了问题代码块),我想用print语句进行测试,但是它给了我这个TypeError:

代码语言:javascript
复制
Traceback (most recent call last):
  File "<mypath>", line 51, in <module>
    print("Injectable SSH "+ result2 +"for the Network "+num2)
TypeError: Can't convert 'float' object to str implicitly
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-07-17 18:49:23

正如错误消息所述:您必须显式地将“float”转换为str。

这解决了您的问题:

代码语言:javascript
复制
print("Injectable SSH "+ str(result2) + " for the Network " + str(num2))

更好的是,使用格式字符串

代码语言:javascript
复制
print("Injectable SSH {} for the Network {}".format(result2, num2))

它们帮助您保持消息格式的整洁、结构化和透明。

票数 2
EN

Stack Overflow用户

发布于 2016-07-17 18:47:53

您必须显式地将result2和num2转换为字符串。

代码语言:javascript
复制
print("Injectable SSH "+ str(result2) +"for the Network "+ str(num2))
票数 0
EN

Stack Overflow用户

发布于 2016-07-17 18:51:32

问题是,您试图在行中的字符串中添加浮点数(十进制)

代码语言:javascript
复制
print("Injectable SSH "+ result2 +"for the Network "+num2) 

"Interjectable“是一个字符串,result2是一个浮点数,python无法知道如何将十进制添加到字符串中。有些语言会自动将浮点数转换成字符串,但是python不会,因此错误“不能将' float‘对象隐式地转换为str”。

您需要做的是使用内置的str()方法显式地将result2和num2转换为字符串。在进行必要的更改后,行将如下所示:

代码语言:javascript
复制
print("Injectable SSH "+ str(result2) +"for the Network "+str(num2)) 

在python中还有其他几种方法可以做到这一点。如果您想了解这一点,请查阅一个教程中的"python字符串格式“。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38424699

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档