我是python的新手,我必须创建一个打印用户输入字符串的中间字符的程序。这就是我所拥有的:
#accept string from user then print middle character
x = input("Enter a string: ")
print(x[len(x)/2-1])
但是,当我尝试运行程序时,我一直收到此错误:
“TypeError:字符串索引必须是整数”。
我不知道如何解决这个问题或如何使这个程序工作。请帮忙!
答案 0 :(得分:5)
根据您的错误,我推断您使用的是python 3。
在python 3中,两个整数之间的除法返回一个浮点数:
>>> 3/2
1.5
>>> 4/2
2.0
但是一个indeces必须是整数,所以你得到错误。要强制进行整数除法,必须使用//
运算符:
>>> 3//2
1
>>> 4//2
2
如果您想要更好地控制花车的四舍五入,您可以使用math.ceil
或math.floor
。
答案 1 :(得分:0)
这是一种方式:
x = raw_input("Enter a string: " )
print (x[:len(x)//2])