Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Sequence of numbers – python

i create a program that reads a sequence of numbers, determines how many different numbers there are (we count the repetitions once), and writes the result to the standard output.
my first code:

f=int(input("String of numbers: "))
l=[]
for x in range(f):
    string_numbers = int(input(f'Enter {x+1} string of numbers: '))
    l.append(string_numbers)

mylist = list(dict.fromkeys(l))
print(len(mylist))

I wanted to take into account if the user entered a string too short or too long than declared. I wanted the user to type everything on one line. When I enter an incorrect string number, I get duplicated "incorrect string lengthincorrect string length"

f=int(input("String of numbers: "))
my_list = input('Enter numbers in the string, separated by spaces: ').split()
list_of_integers=[]
l=len(str(list_of_integers))
for i in my_list:
    list_of_integers.append((i))
mylist = list(dict.fromkeys(list_of_integers))
for i in range(f):
    if i < l:
        print("incorrect string length", end='')
    elif i > l:
        print("incorrect string length", end='')
    else:

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

It seems like you’re mixing up your different variables — f is what you want the length to be, l is just the number 2, and the way you’re comparing those two has nothing to do with the actual input entered by the user, which is my_list.

Using variable names that indicate their meaning might make it easier to keep it all straight:

num_count = int(input("Length of string of numbers: "))
num_list = input('Enter numbers in the string, separated by spaces: ').split()
if len(num_list) == num_count:
    print(f"there are {len(set(num_list))} different numbers")
else:
    print("incorrect string length")

In the above code, num_count is the count of how many (non-unique) numbers you expect them to input, and num_list is the actual list. To figure out if the list is the expected length, compare num_count to len(num_list).

Note that since all you’re doing is looking for unique values, converting the strings in num_list to int is not necessary (whether or not you use a set as I’ve done here).

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading