Отговори на тема  [ 9 мнения ] 
PyQT4/5 App 
Автор Съобщение
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение PyQT4/5 App
Здравейте, опитвам се да стартирам този проект, но получавам грешки.
https://github.com/molodoj88/xbee-gui?f ... 6A164fJ3_M

Някаква помощ ?


Прикачени файлове:
2542.jpg
2542.jpg [ 104.62 KiB | Прегледано 5721 пъти ]
Пон Ное 08, 2021 8:22 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Сеп 25, 2004 11:32 am
Мнения: 7896
Местоположение: София
Мнение Re: PyQT4/5 App
Не ползвай кирилица


Нед Ное 14, 2021 2:08 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение Re: PyQT4/5 App
Ако имате предвид Руските коментари в кода, съм ги променил на Английски, но си е същото.

Предложиха ми да добавя този ред:
Код:
Import json
json.load("yourfilebame.json", "utf-8")


Но сега ми излиза тази грежка:
Код:
File "C:/xbee-gui-master/XbeeCommands.py", line 13, in <module>
    descriptions = json.load(jsonFile.json,"utf-8")
AttributeError: '_io.TextIOWrapper' object has no attribute 'json'


Някаква идея ?


Нед Ное 21, 2021 1:43 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пон Мар 13, 2006 12:59 pm
Мнения: 3855
Местоположение: Габрово
Мнение Re: PyQT4/5 App
import с малка буква, не с главна.
Коя версия ти е питона и под какъв ОС? Има разлика между python2 и python 3.
За бързи проби има т.нар. "python repl" онлайн - например: https://replit.com/languages/python3
Този код (с коригиран import) дава:
Код:
Traceback (most recent call last):
  File "main.py", line 2, in <module>
    json.load("yourfilebame.json", "utf-8")
TypeError: load() takes 1 positional argument but 2 were given

Като стане така запалваш гугъла и търсиш "python3 json.load" - отиваш на https://docs.python.org/3/library/json.html и търсиш какво очаква като втори позиционен аргумент - демек, няма такъв, то си пише и в грешката.
Като махнеш втория става по-ясно:
Код:
Traceback (most recent call last):
  File "main.py", line 2, in <module>
    json.load("yourfilebame.json")
  File "/usr/lib/python3.8/json/__init__.py", line 293, in load
    return loads(fp.read(),
AttributeError: 'str' object has no attribute 'read'

Ако се беше зачел в документацията, щеше да видиш същото - първият аргумент не е име на файл, а хендъл към вече отворен файл. Т.е. трябва да повикаш първо отваряне на файла, и резултата да ползваш за единствен аргумент.
Сега, ако тоя код някога някъде е работил, много вероятно е да е ползван друг модул за json или много различна версия.
Приличен начин да отвориш файла и да го парсираш през json.load е този пример:
Код:
import json

with open('yourfilebame.json') as f:
  data = json.load(f)

# Output
print(data)

Като гледаш, става ясно че който ти го е "предложил" не е уцелил тотото - трябва да "хванеш" връщаното при парсирането в променлива за да го позлваш после (data в примера).

Какъв е тоя код дето искаш да го пускаш?

Едит: видях линка. Ама там пише:
Код:
from xbee import XBee
import json
import os

with open("CommandDescriptions.json") as jsonFile:
    descriptions = json.load(jsonFile)

Това е отвсякъде коректно - пусната на pytjon 3 repl вади че не може да намери конкретния файл, което е очаквано:

Код:
Traceback (most recent call last):
  File "main.py", line 4, in <module>
    with open("CommandDescriptions.json") as jsonFile:
FileNotFoundError: [Errno 2] No such file or directory: 'CommandDescriptions.json'


Всъщност проблемът е в съдържанието/енкодинга да самия json файл с командите. Отвори го в качествен редактор и го смени на нещо нормално - може би utf-8. Доколкото разбирам, при теб е cp-1251.
При мен всичко изглежда добре - дръпнах го с git и под ubuntu си отваря файла и парсира нормално. Да не би да теглил зип, или да си ровичкал из файла с недоклатен редатор?


Нед Ное 21, 2021 4:18 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение Re: PyQT4/5 App
Ползвам Python 3. Редактора ми е PyCharm. ОС- WIN 7.
Да, свалих го като .zip. Винаги съм свалял така и до сега не съм имал такива проблеми.
Пробвах utf-8, но нещо не се получи (кодът от предходният ми пост).

Как да оправя нещата чрез utf-8 ?


Пон Ное 22, 2021 9:20 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Сря Юли 11, 2007 9:16 am
Мнения: 1705
Мнение Re: PyQT4/5 App
Направих малък тест - заредих само JSON-a от файл и нямаше никакви драми. За тест обърнах енкодинга на файла до windows-1251 и разбираемо веднага се разсърди. Обърнах го обратно до UTF-8 и нямаше проблеми. Добавянето на UTF-8 BOM не го изкефи хич, та не трябва да го има.
Прикачената снимка е от долният десен ъгъл на IDE-то. От там можеш да смениш ендкодинга и да премахнеш ако се налага UTF-8 BOM-a.
Прикачени файлове:
intellij-encoding.png
intellij-encoding.png [ 27.99 KiB | Прегледано 5412 пъти ]


Пон Ное 22, 2021 10:23 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение Re: PyQT4/5 App
Преведох всичко от json файла на Английски и се оправи тази грешка.

Сега в MainForm файла имам следната грешка:

Код:
File "C:/xbee-gui-master/MainForm.py", line 18, in <module>
    class Block(QtGui.QMainWindow, QtGui.QTreeView):
NameError: name 'QtGui' is not defined


Може ли някакви съвети?


Вто Ное 23, 2021 2:24 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение Re: PyQT4/5 App
Най-накрая го подкарах, но като го тествам не събира никакви модули.


Прикачени файлове:
Xbee-gui error.jpg
Xbee-gui error.jpg [ 69.31 KiB | Прегледано 5271 пъти ]
Нед Ное 28, 2021 2:02 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Ное 15, 2017 4:11 pm
Мнения: 136
Мнение Re: PyQT4/5 App
Каква може да е причината, приложението да не може да зарежда Xbee модулите ?


Сря Дек 08, 2021 8:57 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 9 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 5 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни