Найти - Пользователи
Полная версия: Перевод строкового типа в численый
Начало » Python для новичков » Перевод строкового типа в численый
1 2 3
alexan1234
Уважаемые братья и сестры!не корысти ради прошу вас помочь)
В ниже приведенном зачатке кода, я пытаюсь перевести значения из строкового типа, в численные. что б построить график и для математических издевательств.
Но уж третий день терплю полное фиаско(
#A=['12','1','5','7','0','9'] # это то что записано в файле 8.txt без "A=" конечно
f = open('8.txt')
A=f.readline()
c=0
z=[]
z1=[]
while c<6:#меньше или равно количеству чисел в A[]
    z=A[c]
    z1+=z
    c=c+1
plt.plot(int(z1))
print(z1)

Притом если я открываю первую строку кода (та что с #) и коменчу 2 и 3 строки, то все вполне себе работает.
Где моя ошибка!! поможите))
РС использую версию 3.3.2 в PyZo
Budulianin
alexan1234
Притом если я открываю первую строку кода (та что с #) и коменчу 2 и 3 строки, то все вполне себе работает.
Забавно.

Вот так ты объявляешь список:
lst = ['12', '1', '5', '7', '0', '9']

А если у тебя в файле запись
['12', '1', '5', '7', '0', '9']
и ты читаешь строку из файла
A=f.readline()
то у тебя в A ссылка на строку
'['12', '1', '5', '7', '0', '9']'
, а не на список.

Держи в файле например 12,1,5,7,0,9
Читай так же строку из файла, а потом обрабатывай её
Например:
lst = open('input.txt').readline().strip().split(',')
Теперь в lst ссылка на список из строк -
['12', '1', '5' , '7', '0' , '9']

Нужно обработать каждый элемент, чтобы привести их к int

Например:
lst_int = []
for elem in lst:
    lst_int.append(int(elem))

P.S. почитай немного доку или книгу и не будешь мучаться.
alexan1234
Спасибо за обьяснения конечно) книгу(книги!) читаю. прям сеичас три открыто.. но вот что то конкретно Как мне преобразовывать, не вижу..
Хочу еще обратить внимание, изменить запись в файле, я не могу.. тоесть как есть
так все и есть.
то что надо по одному элементу обрабатывать, то дошло и до меня.. но вот проблема.. при такой обработке компилятор сразу ругается на знак “[”.
Budulianin
alexan1234
изменить запись в файле, я не могу..

Значит прочти, что такое JSON, если там конечно корректная запись.

alexan1234
при такой обработке компилятор сразу ругается на знак “[”.
Обрабатывай так, чтобы не ругался.
alexan1234
хм..JSON.. посмотрел.. как то мне сдается из пушки по воробьям.. нет?
убрать знак
 "["  
я пытался командой типа
 a=c[1:-1]   
тоесть убирая первый и последнии символ.
Budulianin
alexan1234
хм..JSON.. посмотрел.. как то мне сдается из пушки по воробьям.. нет?

Не знаю, что ты там прочитал, но если в файле JSON-строки то тут всё очевидно.
Просто парси JSON и всё.

Или ты думаешь эти скобочки туда писали, чтобы ты потом придумал, как от них избавиться ?
alexan1234
Нет, в файле не JSON строки эт точно.. я ж сам его создал)в другом скрипте. и скобочки тоже получается сам создал (ну не лично ручками по кнопкам.. а моя программа).
Я малость проясню, отчего так. Так как я еще весьма начинающии говнокодер, то к задаче обработки фала решил подходить последовательно. на первом шаге я из общего массива байт-данных, выбираю каналы. И на выбор этот канал,перевожу в понятную мне десятичную систему счисления и записываю в другой файл. В предложенном выше скрипте он именуется 8тхт. Условно этот скрипт назовем номер 1.
В скрипте номер два, я пытаюсь открыть созданный ранее канал 8тхт и отобразить его на графике.
В скрипте номер 3, попытаюсь выполнить дифференцирование, нахождение ср арифметтическое ну и тд..
Вообщем то что обычно делают в виде библиотек и модулей, я просто пытаюсь исполнить в виде различных скриптов. Предпологаю, что возможно не самая верная стратегия. Но она думаю позволит мне разбить задачу на малые и понятные участки, не зависящие друг от друга.
Budulianin
alexan1234
Хочу еще обратить внимание, изменить запись в файле, я не могу..
alexan1234
Нет, в файле не JSON строки эт точно.. я ж сам его создал)
alexan1234
возможно не самая верная стратегия.
alexan1234
я еще весьма начинающии говнокодер
alexan1234
епте.. ну не знаешь..не хочешь..не можешь.. зачем тогда в этот раздел лезешь то?? Б…ть.. написано..Для Новичков!!! Тоесть,для глупых вопросов…Ответы на которые, для меня пока не очевидны в книге..
Это что, способ свое самолюбие потешить?
Budulianin
alexan1234
епте.. ну не знаешь..не хочешь..не можешь.. зачем тогда в этот раздел лезешь то??
Чтобы помогать адекватным новичкам.

alexan1234
Б…ть.. написано..Для Новичков!!!
Материться в другом месте будешь.

alexan1234
Это что, способ свое самолюбие потешить?
Нет, это способ показать противоречие, которое тебе мешает и его причину.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB