2016-10-18 29 views
0

例如,我打开了一个文本文件,发现用户想要“购买”的产品。该产品上市的一个记事本的文本文件,与产品名称,然后一个新的生产线,则产品的成本,例如如何在文本文件中声明一行作为变量?

radiators 
0.50 
fridge 
0.50 

这是我迄今所做的:

product = input("What product would you like?") 
userfile = open ("products.txt","r") 
    lines = userfile.readlines() 
    for i in range(0, len(lines)): 
     line = lines[i] 
     if product in (line): 
      found = True 
      print("Found " + line) 
      print("This product is " + lines[i+1]) 
      print("This product costs " +lines[i+2]) 

我需要声明lines[i+2]作为一个变量,所以我可以把它乘以一个整数。有没有办法可以做到这一点?

+1

你不需要把它声明为一个变量,你只需要将字符串转换为数字即可。 – melpomene

+0

好的,谢谢,但我该怎么做? –

+1

我不使用Python,但是你的代码看起来不正确:如果'product'是''radiators“',它会输出'Found radiators'' This product is 0.50'' This product costs fridge'。 – melpomene

回答

0

尝试了这一点:(?这是什么意思连)

产品=输入(“?你喜欢什么产品”)

userfile = open ("products.txt","r") 
lines = userfile.readlines() 

for line in lines: 
    line = line.rstrip('\n') 
    if product in line: 
     found = True 
     print("Found " + line) 
     print("This product is " + lines[i+1]) 
     print("This product costs " + int(lines[i+2])) 
+0

谢谢你的回复,我试着在代码中使用“int”,就像你建议的那样几次,但是这个错误总是出现 –

+0

ValueError:无效文字为int()与基10:' 0.50 \ n' –

+0

@mollyclare这是因为'0.5'不是一个整数。 – melpomene

相关问题