用def middle()求单词中间的字符,为什么我输出不出来

img


题目要求和我的代码,我运行后没法输出,

img


这是怎么回事呀,我没法输出结果

def main():
    strint = str(input("请输入字符串:"))
    print("字符串{}的中间位置的字符是{}!".format(strint,middle(string =strint)))
def middle(string):
    '''返回字符串string中间1个或2个字符'''
    if len(string)%2 ==0:
        x=len(string)//2 -1
        character =string[x]+string[x+1]
        return character
    elif len(string)%2 !=0:
        x =len(string)//2
        character = string[x]
        return character
if __name__ == '__main__':
    while True:
        main()

啥代码写的,main里是个pass,middle也没调用啊,而且middle定义了2遍,不报错吗