【发布时间】:2018-11-26 21:35:55
【问题描述】:
我正在尝试创建一个函数,该函数接受一个数字并将其与 txt 文件中的相同数字进行比较。如果有数字,则输出整行,否则输出没有数字。目前,只有 9 条线路。
我的txt文件(叫nbaPointsLeaders.txt)如下
1. James Harden, Houston Rockets, 30.4
2. Anthony Davis ,New Orleans Pelicans, 28.1
3. LeBron James, Cleveland Cavaliers, 27.5
4. Damian Lillard, Portland Trail Blazers, 26.9
5. Giannis Antetokounmpo, Milwaukee Bucks, 26.8
6. Kevin Durant, Golden State Warriors, 26.4
7. Russell Westbrook, Oklahoma City Thunder, 25.4
8. Kyrie Irving, Boston Celtics, 24.4
9. LaMarcus Aldridge, San Antonio Spurs, 23.1
如果用户输入 1,则输入整个第一行。
我遇到的另一个问题是:
TypeError: 'in <string>' requires string as left operand, not int
每当我要求用户输入数字时,就会出现这种情况。
这是迄今为止我想出的代码。我是 python 的初学者,所以它可能也很明显。
def leaderInPoints(number):
number = int(input("What number from 1-9 would you like to see?"))
with open('nbaPointsLeader.txt','r') as file:
return [i for i in f if number in i])
非常感谢任何帮助!
【问题讨论】:
-
你能展示你试过的代码吗?
-
刚刚用我目前的情况更新了这个问题。
-
什么是变量
f? -
f 是文件。我想我忘了在我的退货声明中更新它
标签: python parsing text-files