Важно использовать стенографию для поддержки кросс-браузера:
.row {
display: flex;
flex-direction: row; /* <-- this is the default so unnecessary to state */
flex-grow: 1;
justify-content: space-between;
}
.button {
display: flex;
/* flex-grow: 1; replace with shorthand */
flex:1 0 100%; /* probably making the "width: 100%;" unnecessary */
justify-content: center;
}
.button#number0 {
/* flex-grow: 2; replace with shorthand */
flex:2 0 100%;
}
.button#colon {
/* flex-grow: 1; replace with shorthand */
flex:1 0 100%;
}
Файл, который Вы создаете с TemporaryFile
или NamedTemporaryFile
, автоматически удален, когда он закрывается, который является, почему Вы получаете ошибку. Если Вы не хотите это, можно использовать mkstemp
вместо этого (см. документы для tempfile).
>>> import tempfile, shutil, os
>>> fd, path = tempfile.mkstemp()
>>> os.write(fd, 'foo')
>>> os.close(fd)
>>> shutil.copy(path, 'bar.txt')
>>> os.remove(path)
Запуск с python 2.6 можно также использовать NamedTemporaryFile
с delete=
набор опции ко Лжи. Таким образом, временный файл будет доступен, даже после закрытия его.
Примечание, что в Windows (NT и позже) Вы не можете получить доступ к файлу во второй раз, в то время как это все еще открыто. Необходимо закрыть его, прежде чем можно будет скопировать его. Это не верно в системах Unix.
Вы могли всегда использовать shutil.copyfileobj в Вашем примере:
new_file = open('bar.txt', 'rw')
shutil.copyfileobj(f, new_file)