Уведомления

Группа в Telegram: @pythonsu

#1 Март 31, 2013 17:52:27

vanvanov
Зарегистрирован: 2013-03-31
Сообщения: 252
Репутация: +  4  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

Почему не работает следующий код?

file="C:\\Documents and Settings\\limited\\text.old"
os.system("C:\\WINDOWS\\notepad.exe" +file)
Python сам видит файл, но винда ни в какую - синтаксическая ошибка в имени файла. Уже пытался пути и как в UNIX прописывать - “C:\Documents не найден”!
При этом os.system(“C:\\WINDOWS\\notepad.exe”) запускает блокнот.

Офлайн

#2 Март 31, 2013 17:59:52

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

из за пробелов в Documents and Settings наверно это

Офлайн

#3 Март 31, 2013 19:36:40

vanvanov
Зарегистрирован: 2013-03-31
Сообщения: 252
Репутация: +  4  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

sergeek
из за пробелов в Documents and Settings наверно это
А что с ними делать?

Офлайн

#4 Март 31, 2013 19:41:04

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

vanvanov
А ничего, что Вы используете зарезервированное слово для названия переменой?



Офлайн

#5 Март 31, 2013 19:58:03

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

vanvanov
А что с ними делать?
убрать

Офлайн

#6 Март 31, 2013 20:00:36

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

4kpt
в 3-ке его убрали

Офлайн

#7 Март 31, 2013 20:10:07

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

Зашибись :) А как Вы узнали, что это тройка?



Офлайн

#8 Март 31, 2013 20:33:26

vanvanov
Зарегистрирован: 2013-03-31
Сообщения: 252
Репутация: +  4  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

4kpt
vanvanovА ничего, что Вы используете зарезервированное слово для названия переменой?
Какое? file? Изменил на my_file - безрезультатно.

Офлайн

#9 Март 31, 2013 20:34:27

vanvanov
Зарегистрирован: 2013-03-31
Сообщения: 252
Репутация: +  4  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

sergeek
убрать
#!/usr/bin/python3
import os
# Проверить существование файла
def exist(file):
        if not os.path.exists(file):
                print("Файл %s не найден!" % file)
        else:
                print("Файл %s найден." % file)
               
file="C:\\WINDOWS\\WindowsUpdate.log"
exist(file)
os.system("C:\\WINDOWS\\notepad.exe" +file)
#C:\Documents and Settings\limited>tst.py
#Файл C:\WINDOWS\WindowsUpdate.log найден.
#Синтаксическая ошибка в имени файла, имени папки или метке тома.

Офлайн

#10 Март 31, 2013 20:39:57

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Windows (XP): Синтаксическая ошибка в имени...

Имя с пробелами передается в кавычках, чтобы не писать \\ вместо \ можно использовать сырые строки (r“”)

file = r'"C:\Documents and Settings\limited\text.old"'
Но в данном случае правильнее использовать subprocess.call(), тогда кавычки не понадобятся.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version