2014-10-15 2 views
0

В основном мне нужна помощь в том, как писать в файл. Затем выведите определенные части, которые находятся в файле.Запись в файл [Python]

name = input("Please enter your name: ") 
print ("This is level 1" 
mylist=["Man utd are the best team","I am going to be a pro typer.","Coding is really fun when you can do it."] 
x=random.choice (mylist) 
print ("The sentence I would like you to type is: ") 
print (x) 

wait = input ("Please press enter to continue, The timer will start upon hitting enter!") 
start = time.time() 
sentence = input("Start typing: ") 
end = time.time() 
overall = end - start 

if sentence == (x): 
    print ("It took you this many seconds to complete the sentence: %s" % overall) 

Я хочу записать рекорды с наименованием. Поэтому я хочу написать время, когда кому-то понадобилось выполнить предложение в файл. Затем выведите наилучшее время в файле. Когда программа запускается снова, время, затраченное на это, помещается в файл. В зависимости от того, какое время лучше, выводится. Это возможно? Пожалуйста помоги. Я новичок в кодировании.

+0

Вам нужно закрыть скобку в строке # 2 для примера кода для запуска , – MackM

ответ

1

Используйте метод open(), read() и write() способ записи в файл.

Чтобы открыть файл, а затем записать на него Python имеет методы:

f = open(filename, modeYouDesire) 

В данном случае я бы это сделать (он будет обрабатывать окончаний Unix-строки, я считаю):

f = open(filename, 'rU') 

После того, как файл открыт, вам нужно будет преобразовать файл в строку (то есть правильно писать в содержимом) с помощью метода .read():

textOfFile = f.read() 

Теперь, когда это строка, используйте метод .write() для записи строки в содержимом файла. textOfFile.write (whateverYouNeedToWrite)

Аргумент для метода .write() - это строка, поэтому будьте осторожны с тем, какой тип вы вводили в нее.

При необходимости вы можете использовать метод .close(), чтобы закрыть файл в конце метода, но это не требуется.

Другие документы могут быть найдены здесь о методах записи файлов: https://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects

5

Вы можете открыть файл как:

with open(filename, mode) as alias_name: 
    # lines of code... 

Использование with ключевого слова с open всегда будет закрывать файл по завершении блока, поэтому вам не нужно управлять закрытием файлов. Для записи в файл вы можете использовать режим w. Полный список режимов см: https://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files

with open(filename, 'w') as f: 
    f.write(content_that_needs_to_be_written) 
1

Поскольку вы используете питон для этого проекта, вы можете попробовать pickle модуль.

Это позволит вам сбрасывать и извлекать время как есть, без преобразования в строку и из нее. Например:

import pickle 

# Your code here 

pickle.dump(overall, timefile) 

Позже, когда вы хотите, чтобы получить время из файла, использовать что-то вроде:

last_time = pickle.load(timefile) 
Смежные вопросы