Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 17.01.2021
Сообщений: 4

Не понимаю как сделать чтоб не повторялись значения в переменной a?

17.01.2021, 16:59. Показов 5713. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# -*- coding: utf8 -*-
 
# Игра кто хочет стать миллионером
 
# Импортируем модули
 
import time
 
import random
 
# Делаем прикольные тайм слипы и тексты в виде загрузок
for ch in range(9):
    
    time.sleep(1)
 
    print('Загрузка, подождите')
 
    time.sleep(3)
 
    print('Загрузка завершена')
 
    time.sleep(1)
 
    # Создаём переменные с  вопросами и ответами
    a = ('Как характеризуют человека, одетого во всё новое? Варианты ответа: Хорошо выглядишь, Одет с ниточки, Одет с иголочки', 'Из чего сделаны ядра орехов, которые грызёт белка в "Сказке о царе Салтане"? Варианты ответа: Изумруд, Золото, Серебро, Алмаз', 'Кто занимался подготовкой волокна к прядению? Варианты ответа: Огородник, Трепач, Балабол, Фразёр', 'Как жители Лондона прозвали свой метрополитен? Варианты ответа: Червяк, Труба, Горло, Вена','Кто не играл в кино сотрудника МУРа Владимира Шарапова? Варианты ответа: Георгий Жжёнов, Алексей Баталов, Сергей Шакуров, Владимир Конкин', 'Какой самолёт можно увидеть в Музее авиации и космонавтики в Ле-Бурже? Варианты ответа: Як-3, По-2, Ту-114, Ан-12', 'В каком городе находился цирк, где выступал мистер Икс, герой оперетты Имре Кальмана "Принцесса цирка"? Варианты ответа: В Будапеште, В Париже, В Санкт-Петербурге, В Вене', 'В честь какого географического объекта супруги Киплинг назвали сына Редьярдом? Варианты ответа: Река, Гора, Озеро, Город', 'Что с 1714 года Пётр I запретил делать во всех российских городах, кроме Санкт-Петербурга? Варианты ответа: Ездить в каретах, Устраивать балы и ассамблеи, Строить каменные дома, Казнить купцов')
    b = random.choice(a)
        
    print(str(b))
 
    d = 'Одет с иголочки'
    e = 'Изумруд'
    f = 'Трепач'
    h = 'Труба'
    j = 'Алексей Баталов'
    k = 'Як-3'
    l = 'В Санкт-Петербурге'
    m = 'Озеро'
    n = 'Строить каменные дома'
 
    time.sleep(1)
 
    c = input('Введите овет:')  
    # Работаем с ifами
    # Если рандомный вопрос равен этому же рандомному вопросу то что вы ввели равняется ответу, тоесть переменной с ответом)))
    if b == a[0]:
        if c == d:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[1]:
        if c == e:
            print('Это правильный ответ')
        else:
            print('Ответ не правильный!')
        
    if b == a[2]:
        if c == f:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[3]:
        if c == h:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[4]:
        if c == j:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[5]:
        if c == k:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[6]:
        if c == l:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[7]:
        if c == m:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[8]:
        if c == n:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.01.2021, 16:59
Ответы с готовыми решениями:

Массив случайных чисел, как сделать чтоб они не повторялись?
Я сделал массив с рандомными числами, как сделать чтоб они не повторялись ? srand(time(NULL)); int*Arr; const int R=10; ...

Сделать так чтоб не повторялись буквы
Помогите пожалуйста с задачей Условие : Дана непустая последовательность слов из строчных русских букв; между соседними словами -...

Как сделать, чтобы рандом-значения не повторялись?
Или как можно сделать что бы выводилось по порядку ? psr:array of string = ('Петров', 'Иванов','Ложкин','Сидоров'); implementation ...

11
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
17.01.2021, 17:04
Im Not Coffin, Начать нужно с того, что, когда Вы копируете сюда код своей программы, используйте в окне кнопку Python ('Выделить код Python') и туда, между тегами, вставляйте свою программу, что бы не пропадали отступы из Вашей программы. Тогда будет проще отвечать на Ваш вопрос, учитывая, что ошибка у Вас может быть и в неправильных отступах. Отступы являются частью синтаксиса Python.
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
17.01.2021, 17:16
Im Not Coffin, все очень сильно захардкожено, любое изменение кода приведет к поломке. Можно приладить вот такой костыль.
Перед циклом
Python
1
2
3
4
# Делаем прикольные тайм слипы и тексты в виде загрузок
getted = [' ']
b = ' '
for ch in range(9):
При выборе
Python
1
2
3
while b in getted:
    b = random.choice(a)
getted.append(b)
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
17.01.2021, 17:17
Цитата Сообщение от Im Not Coffin Посмотреть сообщение
Не понимаю как сделать чтоб не повторялись значения в переменной a?
Python
1
a = set(a)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
17.01.2021, 17:18
Arsegg, тогда все сломается. Посмотри на проверку правильных ответов. Там все захардкожено на индексы
0
17.01.2021, 17:28

Не по теме:

Цитата Сообщение от iSmokeJC Посмотреть сообщение
тогда все сломается
Будет повод написать "нормально".

0
0 / 0 / 0
Регистрация: 17.01.2021
Сообщений: 4
17.01.2021, 17:31  [ТС]
iSmokeJC, Цикл 'while' где надо ставить??
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
17.01.2021, 17:32
Im Not Coffin, оставляй все как есть у тебя, просто добавь то, что я написал. Твои кусочки кода как раз для понимания - куда ставить
0
0 / 0 / 0
Регистрация: 17.01.2021
Сообщений: 4
17.01.2021, 17:40  [ТС]
Понял, спасибо огромное я просто новичок и решил такую игруху запилить только одного не понимал, спасибо!!

Добавлено через 6 минут
iSmokeJC, чёт не работает
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
17.01.2021, 17:43
Цитата Сообщение от Im Not Coffin Посмотреть сообщение
чёт не работает
не туда вставил
v.1.0.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# -*- coding: utf8 -*-
# Игра кто хочет стать миллионером
# Импортируем модули
import time
import random
 
# Делаем прикольные тайм слипы и тексты в виде загрузок
getted = [' ']
b = ' '
for ch in range(9):
    time.sleep(1)
    print('Загрузка, подождите')
    time.sleep(3)
    print('Загрузка завершена')
    time.sleep(1)
 
    # Создаём переменные с  вопросами и ответами
    a = [
        'Как характеризуют человека, одетого во всё новое? Варианты ответа: Хорошо выглядишь, Одет с ниточки, Одет с иголочки',
        'Из чего сделаны ядра орехов, которые грызёт белка в "Сказке о царе Салтане"? Варианты ответа: Изумруд, Золото, Серебро, Алмаз',
        'Кто занимался подготовкой волокна к прядению? Варианты ответа: Огородник, Трепач, Балабол, Фразёр',
        'Как жители Лондона прозвали свой метрополитен? Варианты ответа: Червяк, Труба, Горло, Вена',
        'Кто не играл в кино сотрудника МУРа Владимира Шарапова? Варианты ответа: Георгий Жжёнов, Алексей Баталов, Сергей Шакуров, Владимир Конкин',
        'Какой самолёт можно увидеть в Музее авиации и космонавтики в Ле-Бурже? Варианты ответа: Як-3, По-2, Ту-114, Ан-12',
        'В каком городе находился цирк, где выступал мистер Икс, герой оперетты Имре Кальмана "Принцесса цирка"? Варианты ответа: В Будапеште, В Париже, В Санкт-Петербурге, В Вене',
        'В честь какого географического объекта супруги Киплинг назвали сына Редьярдом? Варианты ответа: Река, Гора, Озеро, Город',
        'Что с 1714 года Пётр I запретил делать во всех российских городах, кроме Санкт-Петербурга? Варианты ответа: '
        'Ездить в каретах, Устраивать балы и ассамблеи, Строить каменные дома, Казнить купцов']
 
    while b in getted:
        b = random.choice(a)
    getted.append(b)
 
    print(b)
 
    d = 'Одет с иголочки'
    e = 'Изумруд'
    f = 'Трепач'
    h = 'Труба'
    j = 'Алексей Баталов'
    k = 'Як-3'
    l = 'В Санкт-Петербурге'
    m = 'Озеро'
    n = 'Строить каменные дома'
 
    time.sleep(1)
 
    c = input('Введите овет:')
    # Работаем с ifами
    # Если рандомный вопрос равен этому же рандомному вопросу то что вы ввели равняется ответу, тоесть переменной с ответом)))
    if b == a[0]:
        if c == d:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[1]:
        if c == e:
            print('Это правильный ответ')
        else:
            print('Ответ не правильный!')
 
    if b == a[2]:
        if c == f:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[3]:
        if c == h:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[4]:
        if c == j:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[5]:
        if c == k:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[6]:
        if c == l:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[7]:
        if c == m:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')
 
    if b == a[8]:
        if c == n:
            print('Это правильный ответ!')
        else:
            print('Ответ не правильный!')


v.2.0.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# -*- coding: utf8 -*-
# Игра кто хочет стать миллионером
# Импортируем модули
import time
import random
 
# Делаем прикольные тайм слипы и тексты в виде загрузок
getted = [' ']
b = ' '
for ch in range(9):
    # time.sleep(1)
    # print('Загрузка, подождите')
    # time.sleep(3)
    # print('Загрузка завершена')
    # time.sleep(1)
 
    # Создаём переменные с  вопросами и ответами
    a = {
        'Как характеризуют человека, одетого во всё новое? Варианты ответа: Хорошо выглядишь, Одет с ниточки, '
        'Одет с иголочки': 'Одет с иголочки',
        'Из чего сделаны ядра орехов, которые грызёт белка в "Сказке о царе Салтане"? Варианты ответа: Изумруд, '
        'Золото, Серебро, Алмаз': 'Изумруд',
        'Кто занимался подготовкой волокна к прядению? Варианты ответа: Огородник, Трепач, Балабол, Фразёр': 'Трепач',
        'Как жители Лондона прозвали свой метрополитен? Варианты ответа: Червяк, Труба, Горло, Вена': 'Труба',
        'Кто не играл в кино сотрудника МУРа Владимира Шарапова? Варианты ответа: Георгий Жжёнов, Алексей Баталов, '
        'Сергей Шакуров, Владимир Конкин': 'Алексей Баталов',
        'Какой самолёт можно увидеть в Музее авиации и космонавтики в Ле-Бурже? Варианты ответа: Як-3, По-2, Ту-114, '
        'Ан-12': 'Як-3',
        'В каком городе находился цирк, где выступал мистер Икс, герой оперетты Имре Кальмана "Принцесса цирка"? '
        'Варианты ответа: В Будапеште, В Париже, В Санкт-Петербурге, В Вене': 'В Санкт-Петербурге',
        'В честь какого географического объекта супруги Киплинг назвали сына Редьярдом? Варианты ответа: Река, Гора, '
        'Озеро, Город': 'Озеро',
        'Что с 1714 года Пётр I запретил делать во всех российских городах, кроме Санкт-Петербурга? Варианты ответа: '
        'Ездить в каретах, Устраивать балы и ассамблеи, Строить каменные дома, Казнить купцов': 'Строить каменные дома'}
 
    while b in getted:
        b = random.choice(list(a.keys()))
    getted.append(b)
 
    print(b)
    time.sleep(1)
 
    c = input('Введите овет:')
 
    if c == a[b]:
        print('Это правильный ответ!')
    else:
        print('Ответ не правильный!')
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
17.01.2021, 17:53
Im Not Coffin, ну и третий вариант, тебе раскурить
v.3.0.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import random
 
a = {
    'Как характеризуют человека, одетого во всё новое? Варианты ответа: Хорошо выглядишь, Одет с ниточки, '
    'Одет с иголочки': 'Одет с иголочки',
    'Из чего сделаны ядра орехов, которые грызёт белка в "Сказке о царе Салтане"? Варианты ответа: Изумруд, '
    'Золото, Серебро, Алмаз': 'Изумруд',
    'Кто занимался подготовкой волокна к прядению? Варианты ответа: Огородник, Трепач, Балабол, Фразёр': 'Трепач',
    'Как жители Лондона прозвали свой метрополитен? Варианты ответа: Червяк, Труба, Горло, Вена': 'Труба',
    'Кто не играл в кино сотрудника МУРа Владимира Шарапова? Варианты ответа: Георгий Жжёнов, Алексей Баталов, '
    'Сергей Шакуров, Владимир Конкин': 'Алексей Баталов',
    'Какой самолёт можно увидеть в Музее авиации и космонавтики в Ле-Бурже? Варианты ответа: Як-3, По-2, Ту-114, '
    'Ан-12': 'Як-3',
    'В каком городе находился цирк, где выступал мистер Икс, герой оперетты Имре Кальмана "Принцесса цирка"? '
    'Варианты ответа: В Будапеште, В Париже, В Санкт-Петербурге, В Вене': 'В Санкт-Петербурге',
    'В честь какого географического объекта супруги Киплинг назвали сына Редьярдом? Варианты ответа: Река, Гора, '
    'Озеро, Город': 'Озеро',
    'Что с 1714 года Пётр I запретил делать во всех российских городах, кроме Санкт-Петербурга? Варианты ответа: '
    'Ездить в каретах, Устраивать балы и ассамблеи, Строить каменные дома, Казнить купцов': 'Строить каменные дома'}
 
lst = list(a.keys())
random.shuffle(lst)
for b in lst:
    print(b)
    c = input('Введите овет:')
    if c == a[b]:
        print('Это правильный ответ!')
    else:
        print('Ответ не правильный!')

Покомпактней будет?
1
0 / 0 / 0
Регистрация: 17.01.2021
Сообщений: 4
17.01.2021, 17:59  [ТС]
Благодарю круто получилось

Добавлено через 1 минуту
я такие функцции не изучал(( но потом загляну спасибо)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.01.2021, 17:59
Помогаю со студенческими работами здесь

Как сделать чтоб игра продолжалась до тех пор пока все слова не будут угаданы и предлагаемые слова не повторялись
#include <iostream> #include <string> #include <cstdlib> #include <ctime> using namespace std; //Выбор слова дnя перемешивания...

Как сделать так, чтобы значения экземпляров класса не повторялись
Я пытаюсь написать игру 2048. Коротко об игре, для тех кто не знает: Есть поле 4х4 в нем появляются на случайной позиции квадратики с...

ошибочка. не понимаю как сделать чтоб типы соответствовали
по надобности переделывала паскалевскую блок-схему под С++.начало выбивать много ошибок. вот с одной из них не могу справиться ...

Как сделать, чтобы случайные значения заданные методом Random не повторялись?
Как сделать,чтобы случайные значения не повторялись?

Как вывести 20 случайных цифр от 1-20, и чтоб они не повторялись
Как вывести 20 случайных цифр от 1-20, и чтоб они не повторялись


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru