'Python random number loop with different outcomes each time

I’ve been working on a school project and need to do a loop consisting of a couple random numbers but I need them to output a different number each time. The code I’ve been using for the random numbers is this.

import random

a=random.randint(1,9)

I’m new to coding and just starting getting into python for fun and have looked everywhere for how to complete this loop but I can’t find anything that works.I know this code does not include a loop and the loop I was using before was “while True” and “for i in range” Thanks



Solution 1:[1]

You have not created any loop yet. You're generating random integer only once. In order to generate more of them you have to use something like a for loop.

If you're familiar with the concept of range then this is a simple example of generating x-number of random integers.

import random

x = 10
for i in range(0, x):
    a = random.randint(1, 9)
    print(a)

Solution 2:[2]

I am assuming you are doing something like this. Your loop needs to call the random.randint function on each iteration of the loop.

a = random.randint(1,9)

for i in range(5):
    print(a)

What you should be doing is this

for i in range(5):
    print(random.randint(1,9))

Solution 3:[3]

If you want to have 5 values between 1 - 9 without repetition you can use the sample function of the random module. This will select n values from a list and store them in a new list.

array = random.sample(range(1, 9), 5)
for elem in array: 
    print(elem)

But if you want to have a new random value between 1 and 9 every iteration and you dont care if a number is repeated I would go with the answers the others already gave you.

Solution 4:[4]

Random works with a seed, with the same seed the same output

Easiest way to achieve that you want, you will have a different seed each time you run your program

import random
from datetime import datetime
random.seed(datetime.now())
for _ in range(10):
    a=random.randint(1,9)

Solution 5:[5]

I think the cause is you didn't create the getter method for the fileds: name, email, and permission. So, when the thymeleaf try to render the page, it cannot read the value of the name field, or email field, or permission field.

Solution 6:[6]

I was adding another model and it seems like it was causing issues, so I ended up doing this and everything is working fine.

The 'userList' model is used elsewhere in the code.

@GetMapping("home")
public String index(Model model) {
    User user = new User();
    model.addAttribute("user", user);
    model.addAttribute("userList", userService.getUsers());
    return "index";
}

<form th:object="${user}" th:action="@{/home/add}" method="get">
    <p>Id: <input type="text" th:field="*{name}" /></p>
    <p>Message: <input type="text" th:field="*{email}" /></p>
    <p>Message: <input type="text" th:field="*{permission}" /></p>
    <p><input type="submit" value="Submit" /> <input/></p>
</form>

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Crad
Solution 2 alexpdev
Solution 3 Raavgo
Solution 4
Solution 5 Little Bug
Solution 6 Cheezy