Zadanie z random

Odpowiedz Nowy wątek
2018-12-01 14:32
0

Pytanie 1. Mam zadanie Napisz program, który wygeneruje 100 losowych liczb mniejszych niz 1000 i większych niż 500 i zapisz do pliku dane.txt..

import random
x = range(500,1001)
y = random.sample(x,k=100)
with open("C:/Users/Rafał/Desktop/Python/dane.txt","w") as save:
    save.write(str(y))

W pliku mi zapisuje jako liste [15,5,5,....] da się to przerobić żeby normalnie zapisywala liczby po spacji albo od nowej lini ?

Pytanie 2. Zad3. Napisz program, który obliczy średnią losowo podanych przez ciebie liczb i zapisuje je do pliku potega.txt.
Tutaj mam zagwostkę

x = input("Z ilu liczb policzyc srednia ?")
for i in range(x):
    y = list(input("Podaj liczby"))

Nie wiem jak zastąpic to in range(x), żeby wykonywało się tyle razy ile poda użytkownik

Pozostało 580 znaków

2018-12-01 14:36

Ad.1

save.write(' '.join(y))

Ad.2
range(int(x))

2 dzięki natomiast w 1 wywala błąd expected str instance, int found - Raloseq 2018-12-01 14:42
save.write(' '.join(str(x) for x in y)) - jackweb 2018-12-01 15:08
Działa tylko nie za bardzo rozumiem zapisu :/ samą metodę .join rozumiem tylko co w środku niej się znajduję - Raloseq 2018-12-01 15:18
Taki zapis mówi, że każdy element x z listy y zapisujesz jako string str(x), ponieważ można łączyć joinem tylko stringi. - jackweb 2018-12-01 15:40
Możesz szukać szczegółów w internecie pod hasłem list comprehension. - jackweb 2018-12-01 15:52
Dzięki wielkie za pomoc ! - Raloseq 2018-12-01 15:57

Pozostało 580 znaków

2018-12-02 10:56
1

Albo:
save.write(' '.join(map(str, y)))

Pozostało 580 znaków

2018-12-02 14:03
2

Odnośnie jedynki:

with open("C:/Users/Rafał/Desktop/Python/dane.txt","w") as save:
    print(*y, file=save)
Co to za zapis mógłbyś wytłumaczyć pokrótce ? chodzi mi o print() - Raloseq 2018-12-02 17:07
file=save zajmuje się pisaniem tego samego co print, tylko do wybranego pliku. Natomiast dla przykładu, jeśli y = [3, 2, 6], to zapis f(*y) (dla dowolnej funkcji f) znaczy f(3, 2, 6) - jest to takie odpakowanie argumentów do funkcji z obiektu, który wspiera iterację. - enedil 2018-12-02 17:18
Ok dzięki ! - Raloseq 2018-12-02 17:25

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0