Найти - Пользователи
Полная версия: Проблема с функциями
Начало » Python для новичков » Проблема с функциями
1
Merty
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)
xam1816
[code python]сюда писать код,чтобы отображался с отступами[/code]
xam1816
вот здесь явно не то
 spisok_coloda_card = take_iz_colod(spisok_card_playr_1)
в коде функция ничего не принимает
 def take_iz_colod(): #Удаления карт из колоды

Имена переменных и функции и тд. называй на английском языке, а не транслите.Пользуйся переводчиком с русского на английский.Эти названия есть расшифровка для человека,читающего твой код.Из названия должно быть понятно что в себе хранит переменная, а из название функции понятно что она делает или что возвращает
Demsy
Merty
1 и 2 функция не находят spisok_card_player хотя я его ретурню в 1 функции
Правильно, и не должны. return возвращает не имя переменной, а ее значение. Так что переменная spisok_card_player изолирована в первой функции. Если хочешь что бы она была глобальной, объяви ее перед функциями.
AD0DE412
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__)

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

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