Python:使用对象作为参数有区别吗?方法(XXX)与此语法:XXX.method()?
Python: is there a difference between using an object as an argument e.g. method(XXX) vs. this syntax: XXX.method()?
抱歉,我还没有词汇来正确表达这个问题。
例如:
# Import sas7bdat package
from sas7bdat import SAS7BDAT
# Save file to a DataFrame: df_sas
with SAS7BDAT('sales.sas7bdat') as file:
df_sas = file.to_data_frame()
# Print head of DataFrame
print(df_sas.head())
和
# Save file to a DataFrame: df_sas
with SAS7BDAT('sales.sas7bdat') as file:
df_sas = SAS7BDAT.to_data_frame(file)
# Print head of DataFrame
print(df_sas.head())
两者产生相同的结果。它们一般是等价的还是特殊情况?
我不会称之为特例,而是间接的。
您正在使用 with SAS7BDAT('sales.sas7bdat') as file:
创建一个对象 file
,它是 class SAS7BDAT 的一个实例,然后您正在使用 Class 方法 to_data_frame
来自 Class 而不是直接来自实例。
抱歉,我还没有词汇来正确表达这个问题。
例如:
# Import sas7bdat package
from sas7bdat import SAS7BDAT
# Save file to a DataFrame: df_sas
with SAS7BDAT('sales.sas7bdat') as file:
df_sas = file.to_data_frame()
# Print head of DataFrame
print(df_sas.head())
和
# Save file to a DataFrame: df_sas
with SAS7BDAT('sales.sas7bdat') as file:
df_sas = SAS7BDAT.to_data_frame(file)
# Print head of DataFrame
print(df_sas.head())
两者产生相同的结果。它们一般是等价的还是特殊情况?
我不会称之为特例,而是间接的。
您正在使用 with SAS7BDAT('sales.sas7bdat') as file:
创建一个对象 file
,它是 class SAS7BDAT 的一个实例,然后您正在使用 Class 方法 to_data_frame
来自 Class 而不是直接来自实例。