2015-03-06 3 views
0

Я новичок в python и пытаюсь открыть файл, посмотреть его содержимое и сделать что-то на основе этого содержимого.Команды чтения Python из файла

Например, если файл содержит:

Buy 100 20.00 
Buy 400 10.00 
Sell 200 28.00 

Как бы я прочитал файл одну строку, в то время, назначить каждый элемент переменной, и делать что-то на основе этих переменных?

Например, я прочитал первую строчку, а

command = Buy 
quantity = 100 
price = 20.00 

я что-то сделать с этим, а затем прочитать следующую строку

command = Buy 
quantity = 400 
price = 10.00 

Надеется, что это ясно, спасибо

+2

Что случилось с разделением каждой строки? –

ответ

2

Вы можете сделать следующее:

with open("test.txt", "r") as f: 
    for a_line in f: 
     command, quantity, price = a_line.split() 
     print(command, quantity, price) 
     # do what you want with these values here 
     # please note that quantity and price are strings. need to 
     # change them to float if you want to do some calculations. 
3
def buy(num, value): 
    # a sample Buy function 
    print("Buy {} at {}".format(num, value)) 

def sell(num, value): 
    # a sample Sell function 
    print("Sell {} at {}".format(num, value)) 

# command dispatch table - get function based on string 
command = {"Buy": buy, "Sell": sell} 

def main(): 
    with open("file.txt") as inf: 
     for line in inf: 
      cmd, num, val = line.split() 
      command[cmd](int(num), float(val)) 

if __name__ == "__main__": 
    main() 
Смежные вопросы