Найти - Пользователи
Полная версия: FOR Решено!!! Спасибо!!!
Начало » Python для новичков » FOR Решено!!! Спасибо!!!
1 2
Molotok
x = molotok.y_from_q(open(“Test.txt”,“r”).readline()) - прочитать и обработать первую строку. Это работает.

Как цикл создать с чтением и обработкой всего списка .txt построчно?
JOHN_16
Описание задачи… я бы сказал отсуствует напрочь. Ну я понял это так
 with open("Test.txt") as f:
    for line in f:
        x = molotok.y_from_q(line)
Molotok
JOHN_16
Описание задачи… я бы сказал отсуствует напрочь. Ну я понял это так
Это не работает! Или я деревянный…

С readline() работает функция, читает первую строку, но мне нужно по всему списку пройти функцией
x = molotok.y_from_q() подставляя ей в скобки значение из .txt файла по порядку.
molotok.y_from_q # Обрабатывает значение в скобках.
'x' равен этой обработке.
JOHN_16

Molotok
скормить строке текстовый файл построчно
скормить кому? Строке? текстовый файл построчно? Что за … не понятно
Molotok
Или я деревянный…
Это вы деревянный :-)
 Evgenijs-MacBook-Pro:gtest makhmudovevgeniy$ cat Test.txt
hello
world
!
Evgenijs-MacBook-Pro:gtest makhmudovevgeniy$ python3
Python 3.6.3 (default, Oct  4 2017, 06:09:38)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> with open('Test.txt') as f:
...     for line in f:
...         print(line)
...
hello
world
!
Molotok
JOHN_16
—– SyntaxError: unexpected EOF while parsing

В общем, тут не разберёшься без ста грамм, я понял!
JOHN_16
не, я не в силах вам помочь
Egorro13
Molotok
сбросил окно —– SyntaxError: unexpected EOF while parsing
with - это начало блока кода, после него ожидается одна или несколько строк с отступом, как в примере JOHN_16: for идет с отступом относительно with (входит в блок with), print - с отступом от for, т.е. входит в блок for.
 with open('Test.txt') as f:
    ... # действия с файлом f
... # блок закончился, файл f автоматически закрыт
marvellik
Molotok
x = molotok_from_q(x = molotok.y_from_q(open(“Test.txt”,“r”).readline()) - прочитать и обработать первую строку. Так работает.
наверно вы что то не так делаете

 def molotok_from_q(data):
    # обрабатывем строку
    return data.upper()
with open('test.txt','r') as finp:
    for data in finp.readlines() # цикл по строкам файла
        x = molotok_from_q(data) # вызов функции с полученной строкой
        print(x)
Molotok
marvellik
marvellik
x = molotok.y_from_q()

x = molotok.y_from_q('ПЕРЕМЕННАЯ')
модуль molotok вызывает функцию y_from_q которая из переменной в скобках, путём вычислений, получает х
Задача: брать переменную из строк текстового файла.
marvellik
давайте разбираться. пример
файл test.txt :
строка 1
строка 2
строка 3
строка 4

файл molotok.py
 def y_from_q(data):
    return data.upper().strip()
сам скрипт
 import molotok
with open('test.txt','r') as finp:
    for data in finp.readlines(): # цикл по строкам файла
        x = molotok.y_from_q(data) # вызов функции с полученной строкой
        print(x)
ну и результат
==
СТРОКА 1
СТРОКА 2
СТРОКА 3
СТРОКА 4
>>>
как видите работает и изменяет строки из нижнего в верхний регистр
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