Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 17, 2022 10:51:34

Merty
Зарегистрирован: 2022-01-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с функциями

1 и 2 функция не находят spisok_card_player хотя я его ретурню в 1 функции

 from random import randint
from time import sleep
from typing import Dict
Dict = {1:'пики\n', 2:'крести\n', 3:'черви\n', 4:'буби\n', 6:'Шесть ', 7:'Семь ', 8:'Восемь ', 9:'Девять ', 10:'Десять ', 11:'Волет ', 12:'Дама ', 13:'Король ', 14:'Туз '}
spisok_coloda_card = ['6 1', '6 2', '6 3', '6 4', '7 1', '7 2', '7 3', '7 4', '8 1', '8 2', '8 3', '8 4', '9 1', '9 2', '9 3', '9 4' , '10 1', '10 2', '10 3', '10 4', '11 1', '11 2', '1 13', '11 4', '12 1', '12 2', '12 3', '12 4', '13 1', '13 2', '13 3', '13 4', '14 1', '14 2', '14 3', '14 4']
def get_cart_to_playr(): #Перемещение карты в список карт игрока
    spisok_card_player = []
    for get_card in range(6):
        len_spisok_coloda_card = len(spisok_coloda_card)
        index_card = randint(0,len_spisok_coloda_card)
        Card = spisok_coloda_card(index_card)
        spisok_card_player.append(Card)
    return(spisok_card_player)
def take_iz_colod(): #Удаления карт из колоды
    index_card = 0
    for  take_card in range(6):
        spisok_coloda_card.pop(spisok_card_playr[index_card])
        index_card += 1
    return(spisok_coloda_card)
def take_name_card(): #Перевод карт из списка в интерфейс
    card_player = ''
    nomber_card = 1
    for player_card in spisok_card_player:
        index_number = int(player_card.split(' ')[0])
        index_mast = int(player_card.split(' ')[1])
        card_player += str(nomber_card) + ' ' + Dict[index_number] + ' ' + Dict[index_mast] 
        nomber_card += 1
    return(card_player)
spisok_card_playr_1 = get_cart_to_playr()
spisok_coloda_card = take_iz_colod(spisok_card_playr_1)
name_card_playr_1 = take_name_card(spisok_card_playr_1)

Отредактировано Merty (Янв. 17, 2022 11:35:53)

Офлайн

#2 Янв. 17, 2022 10:57:57

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1352
Репутация: +  118  -
Профиль   Отправить e-mail  

Проблема с функциями

[code python]сюда писать код,чтобы отображался с отступами[/code]

Офлайн

#3 Янв. 17, 2022 17:07:21

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1352
Репутация: +  118  -
Профиль   Отправить e-mail  

Проблема с функциями

вот здесь явно не то

 spisok_coloda_card = take_iz_colod(spisok_card_playr_1)
в коде функция ничего не принимает
 def take_iz_colod(): #Удаления карт из колоды

Имена переменных и функции и тд. называй на английском языке, а не транслите.Пользуйся переводчиком с русского на английский.Эти названия есть расшифровка для человека,читающего твой код.Из названия должно быть понятно что в себе хранит переменная, а из название функции понятно что она делает или что возвращает

Офлайн

#4 Янв. 18, 2022 06:31:41

Demsy
Зарегистрирован: 2022-01-12
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с функциями

Merty
1 и 2 функция не находят spisok_card_player хотя я его ретурню в 1 функции
Правильно, и не должны. return возвращает не имя переменной, а ее значение. Так что переменная spisok_card_player изолирована в первой функции. Если хочешь что бы она была глобальной, объяви ее перед функциями.

Офлайн

#5 Янв. 19, 2022 07:31:48

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Проблема с функциями

Demsy
return возвращает не имя переменной, а ее значение
 A = 2
b = 1
c = [i for i in locals().items() if i[1] == 1]
print(c[0][0], c[0][1])
exec(f"{c[0][0]} = 4")
print(b, type(b))
def q(test):
    A = 3
    c = [i for i in locals().items() if i[1] == 3]
    d = [i for i in locals().items() if i[1] == 5]
    print(locals())
    print(c, d)
    return(globals())
print(q(5)['q'].__name__)



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Янв. 19, 2022 08:28:26)

Офлайн

#6 Янв. 31, 2022 11:04:30

Merty
Зарегистрирован: 2022-01-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Проблема с функциями

Я так понял у меня просто вызовы функции криво написаны, но как это пофиксить?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version