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

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

18.07.2021, 20:55. Показов 1320. Ответов 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
38173 / 21108 / 4307
Регистрация: 12.02.2012
Сообщений: 34,709
Записей в блоге: 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
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru