Python TypeError:只能将str连接到str

2024-09-22 20:33:35 发布

您现在位置:Python中文网/ 问答频道 /正文

这段代码有什么问题

print('Podaj jakiś tekst')
x=input()
print('ten tekst ma'+(len(x))+'znaków')

输出为:

Podaj jakiś tekst
hello
Traceback (most recent call last):
  File "C:\Users\48573\PycharmProjects\niewiem\main.py", line 3, in <module>
    print('ten tekst ma'+(len(x))+'znaków')
TypeError: can only concatenate str (not "int") to str

Tags: 代码mosthelloinputlenprinttracebackrecent
1条回答
网友
1楼 · 发布于 2024-09-22 20:33:35

问题是len()返回的是int,而不是str(字符串)。将最后一行更改为:

print('ten tekst ma'+str((len(x)))+'znaków')

或使用string interpolation

print(f"ten tekst ma{len(x)}znaków")

以下是两个例子:

$ python
Python 3.8.6 (default, Jan 27 2021, 15:42:20)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> x=input()
asdf
>>> print('ten tekst ma'+str((len(x)))+'znaków')
ten tekst ma4znaków
>>> print(f"ten tekst ma{len(x)}znaków")
ten tekst ma4znaków

请注意,数字4(即我提供的输入中的字符数)出现在两个输出中

相关问题 更多 >