Python Forum
producing numbers out of a list
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
producing numbers out of a list
#1
Hi, i want to produce 4 digit numbers out of the numbers in the list (like 1111, 1112, 1113, 1114,....)
How can i do that?

list_ = [1, 2, 3, 4] 
range = (1111, 44445)
Reply
#2
You need to explain more clearly what you are trying to do, and what have you tried to code this so far?
Reply
#3
for x in range(1, 5):
    print(f"111{x}")
Output:
1111 1112 1113 1114
Reply
#4
(Nov-09-2021, 08:09 PM)Yoriz Wrote: You need to explain more clearly what you are trying to do, and what have you tried to code this so far?

I want to add all possible 4 digit numbers that i can write by using [1, 2 ,3 ,4 ]
This is what i wrote so far but it's not the right way to do that.
list_1 = [1, 2, 3, 4]
list_2 = list()

for i in range(1111, 4445):
	i = str(i)
	for j in i: 
		if i.count(j) == 1: 
			list_2.append(i)
		else:	
			break
result = 0
	
for n in list_2:				
	n = int(n)
	result += n

print(result)
Reply
#5
Have a look at
https://docs.python.org/3/library/iterto...eplacement Wrote:itertools.combinations_with_replacement(iterable, r)
Return r length subsequences of elements from the input iterable allowing individual elements to be repeated more than once.

The combination tuples are emitted in lexicographic ordering according to the order of the input iterable. So, if the input iterable is sorted, the combination tuples will be produced in sorted order.

Elements are treated as unique based on their position, not on their value. So if the input elements are unique, the generated combinations will also be unique.
menator01 and bouraque7878 like this post
Reply
#6
Possibly want product. Although shoving the results together to make numbers isn't always trivial.

from itertools import product

digits = "1457"

for number_str in product(digits, repeat=4):
    number = int("".join(number_str))
    print(number)
Output:
1111 1114 1115 1117 1141 1144 1145 1147 ...
Reply
#7
(Nov-09-2021, 08:46 PM)bowlofred Wrote: Possibly want product. Although shoving the results together to make numbers isn't always trivial.

from itertools import product

digits = "1457"

for number_str in product(digits, repeat=4):
    number = int("".join(number_str))
    print(number)
Output:
1111 1114 1115 1117 1141 1144 1145 1147 ...

This is exactly what i was looking for. Thank you.
Reply
#8
What about if i want to product numbers out of the same digits without repition ?
I mean i don't want to product numbers like 1111, 1114, 1115 etc. I want to use a digit only once in a number.
Reply
#9
(Nov-12-2021, 04:14 PM)bouraque7878 Wrote: What about if i want to product numbers out of the same digits without repition ?
I mean i don't want to product numbers like 1111, 1114, 1115 etc. I want to use a digit only once in a number.

Then you want "permutations". You need to make sure you only give it each digit one time or it will repeat it.

from itertools import permutations

digits = "1457"

for number_str in permutations(digits, 4):
    number = int("".join(number_str))
    print(number)
Output:
1457 1475 1547 1574 1745 1754 4157 4175 ...
bouraque7878 likes this post
Reply
#10
Cheers my friend :)
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  How do I calculate a ratio from 2 numbers and return an equivalent list of about 1000 Pleiades 8 15,435 Jan-05-2024, 08:30 PM
Last Post: sgrey
  find random numbers that are = to the first 2 number of a list. Frankduc 23 3,012 Apr-05-2023, 07:36 PM
Last Post: Frankduc
  List of random numbers astral_travel 17 2,531 Dec-02-2022, 10:37 PM
Last Post: deanhystad
  Remove numbers from a list menator01 4 1,251 Nov-13-2022, 01:27 AM
Last Post: menator01
  [split] why can't i create a list of numbers (ints) with random.randrange() astral_travel 7 1,428 Oct-23-2022, 11:13 PM
Last Post: Pedroski55
  Filter and str.isdigit producing an error tester_V 5 1,852 Aug-12-2022, 07:50 AM
Last Post: Gribouillis
  pyautogui.locateOnScreen producing error dude8074 6 3,729 Apr-17-2022, 05:05 PM
Last Post: bowlofred
  Divide a number by numbers in a list. Wallen 7 7,924 Feb-12-2022, 01:51 PM
Last Post: deanhystad
  How to change odd to even numbers in the list? plumberpy 8 3,617 Aug-08-2021, 11:07 AM
Last Post: plumberpy
  convert numbers into list lokesh 1 2,346 Jun-03-2021, 06:37 AM
Last Post: menator01

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020