2015-07-17 2 views
0

Есть ли различия между двумя следующими утверждениями?Python: 'import module' vs 'import module as'

import os 
import os as os 

Если да, то какой из них более предпочтительный?

+0

'import os' .... –

+0

Знаете ли вы разницу между этими двумя заявлениями? –

+1

Да, второе - длиннее и немного медленнее из-за полностью избыточного 'as os' – vaultah

ответ

0

Ниже синтаксис поможет вам в понимании использования использования «в качестве» ключевого слова при импорте модулей

import NAMES as RENAME from MODULE searching HOW 

Используя это помогает разработчику использовать конкретный пользователь имя для импортируемых модулей. Пример:

import random 
print random.randint(1,100) 

Теперь я хотел бы представить конкретное имя пользователя модуля для произвольного модуля таким образом я могу переписать приведенный выше код, как

import random as myrand 
print myrand.randint(1,100) 

Сейчас подходит к вашему вопросу; Какой из них предпочтительнее? Ответ - ваш выбор; Эффект не влияет на использование «как» как части импорта модулей.

0

Если вы хотите использовать имя f для импортируемого модуля foo используйте

import foo as f 
# other examples 
import numpy as np 
import pandas as pd 

В вашем случае, используйте import os

1

Есть ли какое-либо различие между следующими двумя утверждениями?

Номер

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

Первый (import os), потому что второй делает то же самое, но длиннее и повторяется без причины.

4

Он используется только для упрощения, как, скажем,

import random 
print random.randint(1,100) 

такой же, как:

import random as r 
print r.randint(1,100) 

Таким образом, вы можете использовать r вместо random каждый раз.

-1

импорт .... как синтаксис был разработан для ограничения ошибок.

Этот синтаксис позволяет нам указать имя нашего выбора на пакет или модуль, который мы импортируем - теоретически это может привести к конфликтам имен, но на практике синтаксис используется для их избежания.

Переименование особенно полезно при экспериментировании с различными реализациями модуля.

Пример: если бы у нас было два модуля ModA и ModB, у которых был тот же API, мы могли бы написать ModA в качестве MyMod в программе, а затем перейти на использование импорта MoB в качестве MyMod.

В ответе на ваш вопрос нет предпочтительного синтаксиса. Все зависит от вас.