Value overrided after round played, visible when printed out
<p><strong>My code:</strong> </p>

<pre><code>users = []
users.append({"name" : "",
              "numerics" : [],
              "score" : 0 })
users[0]["name"] = input("Your name plz: ")

def getNumbers():
    for i in range(len(users)):
        numbers = input("Assign 8 different numbers (separate each with a comma ','): ")
        userNumbers = numbers.split(",")
    return userNumbers

users[0]["numerics"] = getNumbers()

scores = []
scores.append(users[:])
print(scores)

users[0]["numerics"] = getNumbers()
scores.append(users[:])

print(scores)
</code></pre>

<p><strong>Running example:</strong> </p>

<pre><code>Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
&gt;&gt;&gt; users = []
&gt;&gt;&gt; users.append({"name" : "",
              "numerics" : [],
              "score" : 0 })
&gt;&gt;&gt; users[0]["name"] = input("Your name plz: ")
Your name plz: Gladiator
&gt;&gt;&gt; def getNumbers():
    for i in range(len(users)):
        numbers = input("Assign 8 different numbers (separate each with a comma ','): ")
        userNumbers = numbers.split(",")
    return userNumbers

&gt;&gt;&gt; users[0]["numerics"] = getNumbers()
Assign 8 different numbers (separate each with a comma ','): 99,23,55,11,19,100,1000,89
&gt;&gt;&gt; scores = []
&gt;&gt;&gt; scores.append(users[:])
&gt;&gt;&gt; print(scores)
[[{'numerics': ['99', '23', '55', '11', '19', '100', '1000', '89'], 'name': 'Gladiator', 'score': 0}]]
&gt;&gt;&gt; users[0]["numerics"] = getNumbers()
Assign 8 different numbers (separate each with a comma ','): 100,56,77,32,99,22,45,2
&gt;&gt;&gt; scores.append(users[:])
&gt;&gt;&gt; print(scores)
[[{'numerics': ['100', '56', '77', '32', '99', '22', '45', '2'], 'name': 'Gladiator', 'score': 0}], [{'numerics': ['100', '56', '77', '32', '99', '22', '45', '2'], 'name': 'Gladiator', 'score': 0}]]
&gt;&gt;&gt; 
</code></pre>

<p>I want to be able to for each new round in the game, make changes to the user <strong>numerics</strong> and score, and append it to the <strong>score</strong> list and then print that out. However, it seems like my current way is just overriding the <strong>numerics</strong> and the <strong>score</strong>. <strong>But mostly the numerics part.</strong> </p>

<p>This doesn't seem to work at all: <code>users[0]["score"].append(getNumbers())</code>
Or should I simply clear the values in the list, e.g. score and numerics for each new round for the player. </p>

<pre><code>Round 1: 
Player: Gladiator
Numerics: ['99', '23', '55', '11', '19', '100', '1000', '89']

Round 2: 
Player: Gladiator
Numerics: ['100', '56', '77', '32', '99', '22', '45', '2']
</code></pre>

<p><strong>But the print out shows:</strong></p>

<pre><code>[[{'numerics': ['100', '56', '77', '32', '99', '22', '45', '2'], 
'name': 'Gladiator', 'score': 0}], 

[{'numerics': ['100', '56', '77', '32', '99', '22', '45', '2'], 
'name': 'Gladiator', 'score': 0}]]
</code></pre>

<p><strong>EDIT: I tried resetting the list of numerics:</strong> </p>

<pre><code> users[0]['numerics'] = []
TypeError: list indices must be integers or slices, not tuple
</code></pre>

<p><strong>Test ran the code example by @Sarathsp</strong></p>

<pre><code>Your name plz: Gladiator
Assign 8 different numbers (separate each with a comma ','): 99,100,1000,4,66,77,11,9
[[{'name': 'Gladiator', 'numerics': ['99', '100', '1000', '4', '66', '77', '11', '9'], 'score': 0}]]
Assign 8 different numbers (separate each with a comma ','): 100,33,44,55,0,1,9,2
[[{'name': 'Gladiator', 'numerics': ['99', '100', '1000', '4', '66', '77', '11', '9'], 'score': 0}], [{'name': 'Gladiator', 'numerics': ['100', '33', '44', '55', '0', '1', '9', '2'], 'score': 0}]]
</code></pre>