ищите (), затем читайте (), затем запишите () в Python

Когда вы делаете userProfilePath = objShell.ExpandEnvironmentStrings("%UserProfile%"), вы помещаете путь% UserProfile% в переменную с именем userProfilePath, но после того, как вы не используете эту переменную.

Я думаю, что ваш код должен работать лучше с чем-то вроде:

'Define the location of each pst-file to backup. Increase the counter!
pst(0) = userProfilePath+"\AppData\Local\Microsoft\Outlook\PST\Outlook Data File - mike.pst"
pst(1) = userProfilePath+"\AppData\Local\Microsoft\Outlook\PST\Archive.pst"

'Define your backup location
BackupPath = userProfilePath"\Documents\Outlook Backups\"

вместо

'Define the location of each pst-file to backup. Increase the counter!
pst(0) = "%UserProfile%\AppData\Local\Microsoft\Outlook\PST\Outlook Data File - mike.pst"
pst(1) = "%UserProfile%\AppData\Local\Microsoft\Outlook\PST\Archive.pst"

'Define your backup location
BackupPath = "%UserProfile%\Documents\Outlook Backups\"
7
задан daphshez 23 April 2009 в 22:48
поделиться

3 ответа

Похоже, что это проблема, специфичная для Windows - см. http://bugs.python.org/issue1521491 для аналогичной проблемы.

Еще лучше, Обходной путь дан и объяснен в http://mail.python.org/pipermail/python-bugs-list/2005-August/029886.html , вставьте:

f.seek(f.tell())

между read () и write ( ) звонки.

5
ответ дан 7 December 2019 в 10:07
поделиться

У меня работает:

$ echo hello > myfile.txt
$ python
Python 2.5.2 (r252:60911, Oct  5 2008, 19:24:49) 
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open('myfile.txt', 'r+')
>>> f.seek(-1, 2)
>>> f.tell()
5L
>>> f.read()
'\n'
>>> f.write('\n')
>>> f.close()

Ты на windows? Если это так, попробуйте 'rb +' вместо 'r +' в режиме.

0
ответ дан 7 December 2019 в 10:07
поделиться

режим + для добавления, если вы хотите читать и писать, вы ищете г +.

попробуйте это:

>>> f = open("myfile.txt", "r+")
>>> f.write('\n')

Редактировать:

Вы должны были указать свою платформу изначально ... есть известные проблемы с поиском в Windows. При попытке поиска UNIX и Win32 имеют разные окончания строк, LF и CRLF соответственно. Существует также проблема с чтением до конца файла. Я думаю, что вы ищете смещение seek (2) для конца файла, а затем продолжите.

Эти статьи могут вас заинтересовать (вторая более конкретно):

http: / /coding.derkeiler.com/Archive/Python/comp.lang.python/2004-08/2512.html

http://mail.python.org/pipermail/python-list/2002-June/150556.html

1
ответ дан 7 December 2019 в 10:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: