Python中间字符串打印

时间:2017-10-11 20:59:19

标签: string python-3.x

我是python的新手,我必须创建一个打印用户输入字符串的中间字符的程序。这就是我所拥有的:

#accept string from user then print middle character

x = input("Enter a string: ")
print(x[len(x)/2-1])

但是,当我尝试运行程序时,我一直收到此错误:

  

“TypeError:字符串索引必须是整数”。

我不知道如何解决这个问题或如何使这个程序工作。请帮忙!

2 个答案:

答案 0 :(得分:5)

根据您的错误,我推断您使用的是python 3。

在python 3中,两个整数之间的除法返回一个浮点数:

>>> 3/2
1.5
>>> 4/2
2.0

但是一个indeces必须是整数,所以你得到错误。要强制进行整数除法,必须使用//运算符:

>>> 3//2
1
>>> 4//2
2

如果您想要更好地控制花车的四舍五入,您可以使用math.ceilmath.floor

答案 1 :(得分:0)

这是一种方式:

x = raw_input("Enter a string: " )
print (x[:len(x)//2])