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

Code Style: Подскажите, как красиво заполнить список

07.07.2017, 21:17. Показов 1135. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
здравствуйте подскажите как красиво заполнить список
Python
1
2
3
4
5
6
7
8
9
10
11
ArrayAdress = [
        ntdll + 0xD6123,
        ntdll + 0xA4213, # и пошли одинаковые
        ntdll + 0x4e321,
        ntdll + 0x4e321,
        ntdll + 0x4e321,
        ntdll + 0x4e321,
        ntdll + 0x4e321,
        ntdll + 0x4e321,
        ntdll + 0x4e321,
]
можно это как то скалиграфировать?) в
Python
1
2
3
4
5
6
ArrayAdress = [
        ntdll + 0xD6123,
        ntdll + 0xA4213, # и пошли одинаковые
        [ntdll + 0x4e321]*50,
        ntdll + 0xD6123,
]
Добавлено через 5 часов 5 минут
неужели холивары на тему важности математики увлекательнее красоты кода?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.07.2017, 21:17
Ответы с готовыми решениями:

Code Style в Java.
Я так понимаю в Java не принято интерфейсы называть как в C#, тоесть начиная с префикса "I"? public interface IObserver ...

Code Style for OOP
Здравствуйте. Посоветуйте книгу по дизайну кода (в приоритете ООП на C++ можно и Java на худой конец). А то порой откроешь свой код и...

VS TFS и Code Style
Доброго времени суток, товарищи! Озадачился я одной проблемой, сейчас нахожусь в поиске вариантов решения и вот решил узнать, а что могут...

5
 Аватар для Lovc
80 / 77 / 8
Регистрация: 19.06.2015
Сообщений: 126
07.07.2017, 22:20
Я бы так сделал или цикл while
Python
1
2
3
4
5
Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 17:54:52) [MSC v.1900 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ArrayAdress = ['0xD6123']
>>> ArrayAdress + ['0x4e321' for x in range(50)]
['0xD6123', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321']
Добавлено через 9 минут
Python
1
2
3
>>> ArrayAdress.append(['0x4e321' for i in range(50)])
>>> ArrayAdress
['0xD6123', ['0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321', '0x4e321']]
1
2 / 2 / 0
Регистрация: 07.07.2017
Сообщений: 14
09.07.2017, 11:05  [ТС]
Python
1
2
3
4
5
6
name = [
        ntdll + 0xD6123,
        ntdll + 0xA4213, # и пошли одинаковые
        ['0x4e321' for x in range(50)],
        ntdll + 0xD6123,
]
Python
1
2
3
4
def write_file(file_path):
with open(file_path, 'wb') as f:       
        f.write(name)
write_file(r'c:\name')
error: cannot convert argument to integer
почему я получаю такую ошибку? что нельзя просто взять и записать вложенный список в файл? спасибо за помощь)
0
 Аватар для Lovc
80 / 77 / 8
Регистрация: 19.06.2015
Сообщений: 126
09.07.2017, 22:20
dummok,
Python 3
Python
1
2
3
4
5
6
7
8
9
10
>>> def write_file(file_path):
    with open(file_path, 'wb') as f:
        for i in name:
            if isinstance(i, str):
                f.write(' {} '.format(i).encode())
            else:
                f.write(' '.join(i).encode())
 
                
>>> write_file('file.txt')
Добавлено через 2 часа 4 минуты
Сначала не обратил внимание, что целые числа в списке. Вот вариант для целых чисел:
Python
1
2
3
4
5
6
7
def write_file(file_path):
    with open(file_path, 'wb') as f:
        for i in name:
            if isinstance(i, int):
                f.write(' {} '.format(i).encode())
            else:
                f.write(' '.join(str(toStr) for toStr in i).encode())
1
2 / 2 / 0
Регистрация: 07.07.2017
Сообщений: 14
10.07.2017, 12:52  [ТС]
Python
1
2
3
4
5
6
7
8
ntdll = 77770000
name = [
        ntdll + 0xD6123,
        ntdll + 0xA4213, # и пошли одинаковые
        ['ntdll+0x4e321' for x in range(50)],
        ntdll + 0xD6123,
]
name = ' '.join(str(toStr) for toStr in name)
это получается корневой список у меня целочисленный? вычисляются и хранятся адреса в типе int?
а вложенный список хранит строки 'ntdll+0x4e321','ntdll+0x4e321','ntdll+0 x4e321'
это какой то не порядок, в генераторе не нужно использовать кавычки [ntdll+0x4e321 for x in range(50)]
тогда вроде все верно но ловлю ошибку
Python
1
2
name = ''.join([x if type(x) == str else struct.pack('<I', x)
                        for x in name])
не пойму как преобразовать вложенный список с помощью метода join пока читаю статьи книжки.
это struct.pack не может понять тип? или у меня проблема с индексацией?
Lovc не могли бы вы объяснить вот эту строку
Python
1
f.write(' {} '.format(i).encode())
что это за строка ' {} ' и зачем применяются методы format и encode
0
 Аватар для Lovc
80 / 77 / 8
Регистрация: 19.06.2015
Сообщений: 126
10.07.2017, 14:55
Цитата Сообщение от dummok Посмотреть сообщение
это получается корневой список у меня целочисленный?
У вас все значения в списках целочисленные.

Цитата Сообщение от dummok Посмотреть сообщение
вычисляются и хранятся адреса в типе int?
0xD6123 - это integer в шестнадцатеричной форме.
Python
1
2
>>> 0xD6123
876835
Цитата Сообщение от dummok Посмотреть сообщение
а вложенный список хранит строки 'ntdll+0x4e321','ntdll+0x4e321','ntdll+0 x4e321'
В вашем примере первый элемент хранит integer, а во вложенном списке тип str 'ntdll+0x4e321'. Но, как я понимаю, вам нужно, чтобы ntdll+0x4e321 вычислялось. В этом случае тип должен быть целочисленным,т.е integer, поэтому ошибки нет, когда убираете кавычки.
Цитата Сообщение от dummok Посмотреть сообщение
не пойму как преобразовать вложенный список с помощью метода join пока читаю статьи книжки.
это struct.pack не может понять тип? или у меня проблема с индексацией?
Не понял, что вы хотели сказать.

Цитата Сообщение от dummok Посмотреть сообщение
что это за строка ' {} ' и зачем применяются методы format и encode
{} - это шаблон, по которому вводится строка в файл. Вместо {} подставляется переменная i.
https://pythonworld.ru/osnovy/... ormat.html

А encode нужен для конвертации строки в байты, потому что при открытии файла вы указали 'wb'.
https://stackoverflow.com/ques... n-python-3
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.07.2017, 14:55
Помогаю со студенческими работами здесь

Подскажите как оптимизировать Style для DataGridColumn
Делаю DataGrid и мне нужно верхним колонкам изменить стиль отображения на вертикальный и изменить цвет текста. &lt;Style...

Как можно заполнить двумерный массив с клавиатуры построчно "КРАСИВО"
Как можно заполнить двумерный массив с клавиатуры построчно &quot;КРАСИВО&quot; #include&lt;iostream&gt; #include&lt;vector&gt; ...

Индивидуальный вариант C++ code style
Доброго времени суток! Интересно мнение форумчан по поводу именования объектов c++ кода. - именование объектов(переменные, контейнеры и...

Как задать Style элемента из C# кода, который (Style) определен в XAML коде?
Здравствуйте. У меня такой код Style-a в XAML &lt;Style x:Key=&quot;My_Button&quot; x:Name=&quot;aaa&quot; TargetType=&quot;Button&quot;&gt; &lt;Setter...

Как удалить стиль определенный между <style></style>
Привет. Есть тестовый пример : #foo{color:green;} &lt;div id=&quot;foo&quot; style=&quot;color:red&quot;&gt;hello&lt;/div&gt; Как очистить стили...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
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 и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru