Como posso fixTypeError: o objeto 'str' não pode ser chamado?

Bem, eu já vi esse erro ocorrer para os outros também, mas não consigo descobrir se meu erro é.

Eu entendi isso:

Traceback (most recent call last):
File "C:\Users\Bill\Desktop\Finalizing_2.1(DEVELOPING).py", line 100, in <module>
combined = list(zip(symbols,deck))
TypeError: 'str' object is not callable

Aqui está o meu código: (Python 3.x)

import random #shuffle
import os#file deleting

def shuffledDeck(deck):#shuffles ceck
    random.shuffle(deck)

def dealCard(deck,participant):#deal cards , chooses between player and house with string z
    participant.append(deck.pop())
    if z==1:
        print('\nYou got  %s ' %("{} {}".format(player[len(player)-1],symbols.pop()))) 
    else:
        print('\nHouse got %s ' %("{} {}".format(house[len(house)-1],symbols.pop())))

def total(hand):#chooses between player and house with string z and displays total
    y =sum(hand)
    if z==1:
        print('Your total now is :',y)
    else:
        print('House total now is :',y)

def compareHands(house, player):  #compares players and house's hand totals
    global wallet 
    global bet
    global bank
    if sum(house)>sum(player):
        print('You Lose :(')

        wallet += bet
        bank -= bet
        prw = False
    elif sum(house)<sum(player):
        print('You Win!')

        wallet += bet
        bank -= bet
        prw = True
    elif sum(house)==sum(player):
        print('DRAW!')

def printHistory(history):  #  prints history.txt
    if history=='h':
        f = open('history.txt')
        for l in f:
            print(l,end='') 


# r=0           # last game
row = 1         #  times a game was played
bank = 10       # starting value
exit = False    # making sure the game won't exit if the user doesn't want to
newGame = True

#  defy if it is a new game or the previous had been canceled
try:
   f=open('history.txt')
   print('\n________________________ \nHistory File Available')
   newGame=False#it is not a new game
except FileNotFoundError:
    print('Creating History File..')
    f=open('history.txt','w')
    newGame=True#it is a new game
if newGame==False:#if it is not a new game
    answer=input('Start new game (n) or continue previous game (c)?')#ask 
    if answer=='n':
        f.close()
        os.remove('history.txt')
        f=open('history.txt','w')
    elif answer=='c':
        f=open('history.txt')
        l=f.readlines()
        list=l.pop()
        splitlist=list.split()
        row=int(splitlist[0])
        bank=int(splitlist[5])

print('========================')#begining game

Done=iter([True, False])
while bank>0 and exit==False and (bank <30 or next(Done)):#if bank<0 bank looses so the loop brakes


deck=[2,2,2,2,3,3,3,3,4,4,4,4,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,10,11,11,11,11]
symbols=['\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663','\u2660', '\u2661', '\u2662', '\u2663']


wallet = 0 #Money player won
prw = False #Player Won
player = []
house = []
bet = 0
z = 1 #to choose player or house in totalHand()
loop = True #Enter Houses loop
#out2=1#loopbrake2
Round = 2 #Rounds played(used in 5 cards combination)


#  shuffle both deck and symbols the same way
combined = list(zip(symbols,deck))
shuffledDeck(combined)
symbols[:], deck[:] = zip(*combined)

#player
dealCard(deck,player)
bet = int(input('Place your bet: '))
while bet > bank:
    print('Your bet should not be higher than bank\nplease try again >>>')
    bet = int(input('Place your bet: '))
dealCard(deck,player)
total(player)


#checking
if sum(player) == 22: #double ace
    print('You win (Α-Α)!!')

    wallet += bet
    bank -= bet
    loop = False
    prw = True
elif sum(player)==21:
    print('You win!!')

    wallet += bet
    bank -= bet
    loop = False
    prw = True
else:
    action = input('Hit (h) or stand (s)?: ')
    while action == 'h' and sum(player) <= 21 and prw == False:
        dealCard(deck, player)
        total(player)
        Round += 1     # 5 cards combination

        if player[0] == 7 and player[1] == 7 and player[2] == 7:
            print('You win (Σκουπα)!!')

            wallet += bank
            bank -= bank
            loop = False
            prw = True
            exit = True
        elif Round == 5 and sum(player) <= 21:
            print('You win! (Πενταφυλλια)')

            wallet += bet
            bank -= bet
            loop = False
            prw = True
        elif sum(player) == 21:
            print('You win (21)!!')

            wallet += bet
            bank -= bet
            loop = False
            prw = True
        elif sum(player) < 21:
            action = input('Hit (h) or stand (s)?: ')
        elif sum(player) > 21:
            print('You Lose :( ')

            wallet -= bet
            bank += bet
            loop = False
            pwd = False




#houses turn
if loop is True:
    z=0
    dealCard(deck,house)

    total(house)
    while sum(house)<17:
        dealCard(deck,house)
        total(house)


    #comparison
    if sum(house)<=21:
        if house[0] == 7 and house[1] == 7 and house[2] == 7:
            print('You Lose :( (7-7-7)')

            wallet = 0
            bank += bet
            pwd = False
            exit = True         
        elif sum(house) == 21:
            print('You Lose :( ')

            wallet -= bet
            bank += bet
            pwd = False
        else:
            compareHands(house,player)
    elif sum(house)>21:
        print('You Win!')

        wallet += bet
        bank -= bet
        prw = True

print("Bank's balance now is", bank)
if sum(house) == sum(player):
    winner = 'DRAW'
elif prw is False:
    winner = 'House'
elif prw is True:
    winner = 'Player'


#updating history.txt file
if row==1:
    f=open('history.txt','r+')
    f.write('%-*s%-*s%-*s%-*s%-*s %-*s'%  (10,'Round',15,'Bet($)',10,'Player',10,'House',15,'Winner',10,'Bank($)'))
    f.close()
    f=open('history.txt','a')
    f.write('\n%-*s%-*s%-*s%-*s%-*s %-*s'%(10,row,15,bet,10,sum(player),10,sum(house),15,winner,10,bank))
    row+=1
    f.close()
else:
    f=open('history.txt','a')
    f.write('\n%-*s%-*s%-*s%-*s%-*s %-*s'%      (10,row,15,bet,10,sum(player),10,sum(house),15,winner,10,bank))
    row+=1
    f.close()


#display history and other actions
history=input('\nContinue(c), print history (h) or exit game (x)?')
while history=='h':
    printHistory(history)
    history=input('\nContinue(c), print history (h) or exit game (x)?')
if history=='c':
    exit=False
else:
    exit=True


#game overview
print('Game Over')
if bank==0:
    print('Player has won $10')
elif bank>10:
    print('Player has lost %d

É um jogo simples de blackjack que a maioria dos iniciantes faz em python. Espero que os comentários no código o ajudem a entender.

Meu erro deve ser algo bobo, desde que eu seja novo no idioma, mas espero que você me ajude. É executado como deveria, o único problema é ... Quando o programa pergunta:

Iniciar novo jogo (n) ou continuar o jogo anterior (c)?

e você dá 'c' como entrada, dá o erro.

Encontrei este método neste site, por isso não posso usá-lo corretamente:

combined = list(zip(symbols,deck))
shuffledDeck(combined)
symbols[:], deck[:] = zip(*combined)
quaisquer melhorias no código são aceitáveis.

Desde já, obrigado!

ATUALIZAR!

existe alguma maneira de exibir a letra 'A' (significa ás) em vez de 11?

por exemplo.

Você tem A ♡ em vez de

Você tem 11 ♡

%(bank-10))`

É um jogo simples de blackjack que a maioria dos iniciantes faz em python. Espero que os comentários no código o ajudem a entender.

Meu erro deve ser algo bobo, desde que eu seja novo no idioma, mas espero que você me ajude. É executado como deveria, o único problema é ... Quando o programa pergunta:

Iniciar novo jogo (n) ou continuar o jogo anterior (c)?

e você dá 'c' como entrada, dá o erro.

Encontrei este método neste site, por isso não posso usá-lo corretamente:

combined = list(zip(symbols,deck))
shuffledDeck(combined)
symbols[:], deck[:] = zip(*combined)
quaisquer melhorias no código são aceitáveis.

Desde já, obrigado!

ATUALIZAR!

existe alguma maneira de exibir a letra 'A' (significa ás) em vez de 11?

por exemplo.

Você tem A ♡ em vez de

Você tem 11 ♡

questionAnswers(3)

yourAnswerToTheQuestion