当前位置: 代码迷 >> python >> 在文本文件中搜索日期
  详细解决方案

在文本文件中搜索日期

热度:107   发布时间:2023-07-16 09:45:48.0

请问有人可以帮我整理一下这段代码,因为我是python的新手,但我认为我没有以最有效的方式编写它:

elif choice == "2":
    birthday = input("Which birthday month do you require?e.g.  /10/ : ")
    for line in searchfile:
        if birthday in line:
           print (line)
searchfile.close

三个技巧:

通常,使用raw_input代替input会更安全,因为后者会在将输入传递给您的代码之前先评估输入,因此允许执行任意代码。

如果文件中有“ 10”,则“ 1”也是如此,因此,如果有人搜索一月('1'),他们将找到一月,十月,十一月和十二月的生日。 也许您可以在数据文件中说明出生月份?

如果仅打开搜索文件以读取生日数据,请等到位于if语句中以将其打开后,再使用with语句将其打开以无形地将其关闭。

我将以以下方式编写您的代码:

elif choice == '2':
    birthday = raw_input("Which birthday month do you require? e.g. January: ")
    for line in searchfile:
        if birthday in line:
            print(line)
    searchfile.close()

注意: print(line)在Python 2.x和Python 3.x中均可使用。