簡體   English   中英

將一系列國家/地區傳遞給函數

[英]Passing an array of countries to a function

我對 Python 相當陌生。 我正在利用 Python 的假期包,該包按國家/地區提供公共假期。 我正在尋找一個函數來循環任意數量的國家並返回一個包含 3 列的dataframe

Date, Holiday, Country

基於我有限的知識,我想出了這樣的實現:

import holidays
def getholidayDF(*args):
    holidayDF = pd.DataFrame(columns=['Date','Holiday','Country'])

    for country in args:
        holidayDF.append(sorted(holidays.CountryHoliday(country,years=np.arange(2014,2030,1)).items()))
        holidayDF['Country'] = country
        return holidayDF

holidays = getholidayDF('FRA', 'Norway', 'Finland', 'US', 'Germany', 'UnitedKingdom', 'Sweden')

這將返回一個空白dataframe 我不知道如何繼續!

如果您按如下所示更改 for 循環,則應該沒問題。 大多數相關評論是由用戶roganjosh 提出的 O'Reilly、Wrokx、Prentece Hall、Pearson、Packt .. 僅舉幾例出版商......他們為您准備了一些好書。 現在跳過食譜。

.. code snippet ...

for country in args:
        holidayDF = holidayDF.append(sorted(holidays.CountryHoliday(country,years=np.arange(2014,2030,1)).items()))
 #       holidayDF['Country'] = country  # remove this from the for-loop.
return holidayDF  # move out of the for-loop

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM