Аватар для pyatpy
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37

Посимвольное чтение из консоли

30.03.2023, 08:14. Показов 1889. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый, искал ифу на Stack Overflow, XDA, гуглил, не нашел. Программирую на Python прямо с андроид устройства уже 3 года, и всегда сталкиваюсь с проблемами, на этот раз передо мной появилась задача написать ASCII-based игру, диздок есть, осталась программная часть, и я столкнулся с проблемой управления персонажем внутри игрового мира, а также с управлением меню, вся проблема классического управления ASCII игр - через клавиатуру. после каждого ввода команды, я должен нажимать Enter для ее обработки, а моя задача - по символьная обработка текста в консоли. Например при нажатии "w" персонаж должен двигаться в верх, но мне надо нажать "Enter"... Задача: посимвольное считывание input'а в консоли python на андроид.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.03.2023, 08:14
Ответы с готовыми решениями:

Посимвольное чтение из файла
Помогите с задачей: Текстовый файл состоит не более чем из 10^6 символов X, Y и Z. 1. Определите максимальную длину цепочки,...

Посимвольное чтение из файла
Текстовый файл состоит не более чем из 106 символов X, Y и Z. 1. Определите максимальную длину цепочки, состоящей из символов Z 2....

Посимвольное чтение
В консоль подается текст содержащий такие выражения: а=3 b=7 z=32 a=1 y=2 b=7 "EOF"-конец. программа не...

8
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
30.03.2023, 11:58
Python
1
2
3
4
5
6
import keyboard
 
while True:
    if keyboard.read_key() == "a":
            print('aaa')
    # ...
0
 Аватар для pyatpy
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
31.03.2023, 18:06  [ТС]
iSmokeJC, к сожалению, я не владею правами суперпользователя, по этому получил ошибку:
Code
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
Traceback (most recent call last):
  File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 31, in <module>
    start(fakepyfile,mainpyfile)
  File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 30, in start
    exec(open(mainpyfile).read(),  __main__.__dict__)
  File "<string>", line 3, in <module>
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/__init__.py", line 935, in read_key
    event = read_event(suppress)
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/__init__.py", line 924, in read_event
    hooked = hook(queue.put, suppress=suppress)
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/__init__.py", line 461, in hook
    append(callback)
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/_generic.py", line 67, in add_handler
    self.start_if_necessary()
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/_generic.py", line 35, in start_if_necessary
    self.init()
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/__init__.py", line 196, in init
    _os_keyboard.init()
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/_nixkeyboard.py", line 113, in init
    build_device()
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/_nixkeyboard.py", line 109, in build_device
    ensure_root()
  File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages/keyboard/_nixcommon.py", line 174, in ensure_root
    raise ImportError('You must be root to use this library on linux.')
ImportError: You must be root to use this library on linux.
 
[Program finished]
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
31.03.2023, 19:10


Добавлено через 35 секунд

Не по теме:

а нефига на работе игрушки писать

0
 Аватар для kazak
3602 / 2743 / 355
Регистрация: 11.03.2009
Сообщений: 6,304
31.03.2023, 19:18
Не проверял, но вроде есть альтернатива https://pynput.readthedocs.io/... board.html
0
 Аватар для pyatpy
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
02.05.2023, 17:56  [ТС]
iSmokeJC, ну как бы писать игрушки сейчас моя работа)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
02.05.2023, 18:03
pyatpy, писать игрушки под консоль и с телефона? Это что за работа такая, что вам компов не дают?

Добавлено через 1 минуту

Не по теме:

... а еще у русских есть такие войска - стройбат. Так вот там вообще звери, им даже оружие не дают...

0
 Аватар для pyatpy
3 / 2 / 0
Регистрация: 18.04.2021
Сообщений: 37
02.05.2023, 18:06  [ТС]
iSmokeJC, ну, у меня нет компа, но сейчас коплю, а работаю я на себя, так что некому мне дать в компик погонять)

Добавлено через 1 минуту
kazak, неа, этот модуль не подходит.
Кликните здесь для просмотра всего текста
Code
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
/storage/emulated/0 $ pip install pynput
Collecting pynput
  Downloading pynput-1.7.6-py2.py3-none-any.whl (89 kB)
     ━━━━━━━━━ 89.2/89.2 3.9 MB/s eta 0:00:00               kB                            Requirement already satisfied: six in /data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/site-packages (from pynput) (1.16.0)
Collecting evdev>=1.3 (from pynput)
  Downloading evdev-1.6.1.tar.gz (26 kB)
  Preparing metadata (setup.py) ... done
Collecting python-xlib>=0.17 (from pynput)
  Downloading python_xlib-0.33-py2.py3-none-any.whl (182 kB)
     ━━━━━━━━━ 182.2/183.5 MB/s eta 0:00:00               kB                            Building wheels for collected packages: evdev  Building wheel for evdev (setup.py) ... error
  error: subprocess-exited-with-error
 
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [37 lines of output]
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.linux-aarch64-3.9
      creating build/lib.linux-aarch64-3.9/evdev
      copying evdev/__init__.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/device.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/ecodes.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/eventio.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/eventio_async.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/events.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/evtest.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/ff.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/genecodes.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/uinput.py -> build/lib.linux-aarch64-3.9/evdev
      copying evdev/util.py -> build/lib.linux-aarch64-3.9/evdev
      running build_ext
      running build_ecodes
      The 'linux/input.h' and 'linux/input-event-codes.h' include files
      are missing. You will have to install the kernel header files in
      order to continue:
 
          yum install kernel-headers-$(uname -r)
          apt-get install linux-headers-$(uname -r)
          emerge sys-kernel/linux-headers
          pacman -S kernel-headers
 
      In case they are installed in a non-standard location, you may use
      the '--evdev-headers' option to specify one or more colon-separated
      paths. For example:
 
          python setup.py \
            build \
            build_ecodes --evdev-headers path/input.h:path/input-event-codes.h \
            build_ext --include-dirs  path/ \            install
      [end of output]
 
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for evdev
  Running setup.py clean for evdev
Failed to build evdev
ERROR: Could not build wheels for evdev, which is required to install pyproject.toml-based projects
0
 Аватар для kazak
3602 / 2743 / 355
Регистрация: 11.03.2009
Сообщений: 6,304
02.05.2023, 18:13
Цитата Сообщение от pyatpy Посмотреть сообщение
The 'linux/input.h' and 'linux/input-event-codes.h' include files
are missing. You will have to install the kernel header files in
order to continue
:
yum install kernel-headers-$(uname -r)
apt-get install linux-headers-$(uname -r)
emerge sys-kernel/linux-headers
pacman -S kernel-headers
Там же все написано.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.05.2023, 18:13
Помогаю со студенческими работами здесь

Посимвольное чтение
Всем привет, объясните на уровне понимания как это работает, есть пара вопросов: 1)Если я ввожу число 256(к примеру), то за счет чего...

посимвольное чтение
Как млжно организовать посимвольное чтение?

Работа с буфером клавиатуры (посимвольное очистка консоли)
Программа выводит нажатые клавиши в консоль. Нажимая кнопку backspace символ &quot;удаляется&quot; из консоли. 1)Проблема в том что не...

Реализовать посимвольное считывание из консоли больших текстов
Как реализовать посимвольное считывание из консоли, чтоб работало с большими текстами. С небольшой строкой у нас считвывает нормально, а с...

Посимвольное чтение из файла
Текстовый файл состоит не более чем из 1 миллиона символов X, Y и Z. Определите максимальное количество идущих подряд символов, среди...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru