www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Авторам
Рекламодателям
Контакты
   

  Опросы
1001 и 1 книга  
19.03.2018г.
Просмотров: 10363
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 10467
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 7926
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 4897
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 5742
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 5691
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 8512
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 5081
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 5342
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 9465
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 12888
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 14380
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 16091
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 11010
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 8984
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 7247
Комментарии: 4
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 6334
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 5260
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 4902
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 5153
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

Друзья сайта  

 FAQ Python

Архив номеров / 2003 / Выпуск №2 (3) / FAQ Python

Рубрика: Программирование /  Анализ данных

 РОМАН СУЗИ 

FAQ Python

ВОПРОС:

Python распространяется по лицензии программного обеспечения с открытым исходным кодом, а можно ли для него писать коммерческие программы?

ОТВЕТ:

Лицензия на Python не ограничивает его использования в каких-либо проектах. Если в вашем продукте использован Python, достаточно указать этот факт как в самом продукте, так и в сопровождающей его документации. Подробности в лицензии.

ВОПРОС:

Как превратить шестнадцатеричное представление IP-адреса в строку байт? В «точечное» представление?

ОТВЕТ:

import binascii
binascii.a2b_hex("E786AA80")
".".join(map(str, map(ord, binascii.a2b_hex("E786AA80"))))

Примечание: функция map(f, s) применяет функцию f к каждому элементу последовательности s.

ВОПРОС:

Как из Python узнать IP-адрес хоста?

ОТВЕТ:

import socket
socket.gethostbyname("www.host.ru")

ВОПРОС:

С помощью какой функции можно проверить существование файла или каталога?

ОТВЕТ:

import os
if os.access("/path/to/file", os.F_OK): # файл доступен

ВОПРОС:

Как убрать проценты из записи URL?

ОТВЕТ:

import urllib

urllib.unquote(«http://www.host.ru/%61%62%63»)

ВОПРОС:

Как в Python 2.x изменить кодировку текста в строке?

ОТВЕТ:

Например, перекодировку из KOI8-R в CP1251 можно сделать посредством Unicode:

unicode("ВОПРОС", "koi8-r").encode("cp1251")

ВОПРОС:

Почему получается такой результат?

>>> l = [[0]*2]*2

>>> l

[[0, 0], [0, 0]]

>>> l[0][0] = 1

>>> l

[[1, 0], [1, 0]]

ОТВЕТ:

Объекты списка, участвующие в репликации, копируются поверхностно. Таким образом, список l состоит из двух «ссылок» на один и тот же объект. Соответственно, изменение этого объекта дает такой неожиданный результат.

ВОПРОС:

Есть ли в Python тип данных массив?

ОТВЕТ:

Обычно в Python используется более гибкая встроенная структура данных – список. Если вам действительно нужны массивы, в стандартной библиотеке Python есть модуль array для работы с массивами чисел и символов. Для эффективной работы с массивами данных лучше использовать пакет Numeric Python. Его можно найти на http://numpy.sourceforge.net.

ВОПРОС:

В Python нет встроенного типа данных для множеств. Чем можно его заменить?

ОТВЕТ:

Множества можно легко эмулировать с помощью словарей:

# Инициализируем два множества(повторы будут автоматически убраны,
# так как одному ключу может соответствовать только одно значение)
set = {}
for e in [1,2,3,4,1,5,6,1,4]:set[e] = 1
set1 = {}
for e in [3,4,5,6]:set1[e] = 1
set.keys() # Список элементов множества
set.has_key(5) # Проверка принадлежности множеству
set.update(set1) # Объединение множеств (результат в set)
# Пересечение множеств:
set2 = {}
for e in set.keys():
if set1.has_key(e):
set2[e] = 1

Кроме того, класс множество с различными операциями можно легко запрограммировать. См., например, рецепт на http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/106469.

ВОПРОС:

Как вставить в строку значения переменных по аналогии с «$var» в Perl или sh?

ОТВЕТ:

Можно использовать операцию форматирования и словарь переменных vars() следующим образом (для иллюстрации команды выполнены в диалоговом режиме интерпретатора Python):

>>> a, b, c = 2, «text», 12.4

>>> print «»»a: %(a)05i, b: %(b)s, c: %(c)8.2f»»» % vars()

a: 00002, b: text, c:    12.40

Для строкового литерала были использованы утроенные кавычки: это позволяет использовать внутри строки одиночные кавычки и апострофы без дополнительного экранирования, а также задавать текст на нескольких строках.


Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru