Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
1 / 1 / 0
Регистрация: 26.01.2020
Сообщений: 25

(ООП для новичков) Как получить данные в функции из другой функции

18.07.2021, 20:55. Показов 1342. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет! Есть две функции, точней ябы сказал метод, ибо функция в классе
- одна на регистрацию пользователя, вторая на авторизацию с данными, полученными из первой функции.
Не могу подружить чтобы функция авторизации подхватывала логин, пароль из первой функции, если вынести в 1 функцию - то все работает

Код пишет ошибку "FAILED tests/test_user_edit2.py::TestUserEdit::test_l ogin - AttributeError: 'TestUserEdit' object has no attribute 'saved_email'"

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
from requests.models import Response
from lib.my_requests import MyRequests
import requests
from lib import assertions
from lib.base_case import BaseCase
from lib.assertions import Assertions
import allure
 
@allure.epic("Tests for user edits")
class TestUserEdit(BaseCase):
    @allure.description("this test for success create user")
    def test_user_register(self):
        # REGISTER
        register_data = self.prepare_register_data()
        response1 = MyRequests.post("/user/", data=register_data)
 
        Assertions.assert_code_status(response1, 200)
        Assertions.json_has_key(response1, "id")
 
        email = register_data['email']
        first_name = register_data['firstName']
        password = register_data['password']
        user_id = self.get_answer(response1, "id")
 
        self.saved_email = email
        self.saved_user_id = user_id
        self.saved_password = password
 
        print("REG")
        print(response1.content)
        print(response1.text)
        print(response1.cookies)
    
    def test_login(self):
 
        login_data = {
            'email': self.saved_email,
            'password': self.saved_password
        }
 
        response2 = MyRequests.post("/user/login", data=login_data)
        auth_sid = self.get_cookie(response2, "auth_sid")
        token = self.get_header(response2, "x-csrf-token")
        print(response2.cookies)
        print(response2.headers)
        print(response2.content)

p.s извиняюсь, создал случайно не в разделе для питона, просьба перенести
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.07.2021, 20:55
Ответы с готовыми решениями:

Как получить данные из другой таблицы внутри триггерной функции
Добрый день. Нужна помощь в создании триггерной функции на PL/pgSQL Задача у меня следующая: При изменении определенной...

Нестандартный вопрос.Как получить доступ к переменным функции из другой функции?
<?php declare(ticks=1); function tick_handler() { print_r($_GLOBALS);//Печатает все переменные в области видимости кода вне функции...

Получить указатель из функции и использовать его в другой функции
Подскажите пожалуйста как из функции использовать в функции main указатель? пример void foo1() {u=sizeof(str1); int *l=&u; }...

2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38195 / 21128 / 4309
Регистрация: 12.02.2012
Сообщений: 34,734
Записей в блоге: 14
18.07.2021, 20:58
Вопрос свидетельствует о непонимании сути ООП. И что он "делает" в разделе "Java для начинающих"? Намекну: если нужно, чтобы разные методы одного класса имели доступ к общим переменным, эти переменные следует сделать полями класса.
0
1 / 1 / 0
Регистрация: 26.01.2020
Сообщений: 25
18.07.2021, 22:16  [ТС]
Просьба перенести в раздел питона, случайно тут создал

спасибо за подсказку.
Рабочий код:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
from requests.models import Response
from lib.my_requests import MyRequests
import requests
from lib import assertions
from lib.base_case import BaseCase
from lib.assertions import Assertions
import allure
 
@allure.epic("Tests for user edits")
class TestUserEdit(BaseCase):
    @allure.description("this test for success create user")
    def test_user_register(self):
        # REGISTER
        register_data = self.prepare_register_data()
        response1 = MyRequests.post("/user/", data=register_data)
 
        Assertions.assert_code_status(response1, 200)
        Assertions.json_has_key(response1, "id")
 
        email = register_data['email']
        first_name = register_data['firstName']
        password = register_data['password']
        user_id = self.get_answer(response1, "id")
 
        TestUserEdit.saved_email = email
        TestUserEdit.saved_user_id = user_id
        TestUserEdit.saved_password = password
 
        print("REG")
        print(response1.content)
        print(response1.text)
        print(response1.cookies)
    
    def test_login(self):
 
        login_data = {
            'email': self.saved_email,
            'password': self.saved_password
        }
 
        response2 = MyRequests.post("/user/login", data=login_data)
        auth_sid = self.get_cookie(response2, "auth_sid")
        token = self.get_header(response2, "x-csrf-token")
        print(response2.cookies)
        print(response2.headers)
        print(response2.content)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.07.2021, 22:16
Помогаю со студенческими работами здесь

Функции. Как после одного возвратного значения функции отталкиваться от возврата другой функции
Написал код, в котором 2 функции одна возвращает стринговое значение, вторая должна бы вернуть значение, отталкиваясь от первой. Возможно...

Как данные одной функции использовать в другой?
как сделать так, что бы мои значения, которые посчитаны с помощью одной функции, вызвать в другой ? у меня посчитаны у0,у1,у2,у3. как все...

Получить выражение прибыли как функции от объема выпуска продукции в краткосрочном периоде для производственной функции Кобба-Дугласа
Получить выражение прибыли как функции от объема выпуска продукции в краткосрочном периоде для производственной функции Кобба-Дугласа; если...

Как получить/вызвать список из другой функции?
Добрый день, у меня вопрос, как получить/вызвать список из другой функции? Нужно передать список names в функцию imena(), чтобы прочесть...

Как получить значение переменной из другой функции?
Прошу прощения за простейший вопрос, я только пытаюсь сделать что-нибудь самостоятельно. public void updateCellLocation(CellLocation...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru