[英]How do I use part of my file names as input for a function?
我有200個文件,名為A2016071.4d.L3m_OC.nc到A2016271.4d.L3m_OC.nc,其中最后3位數字(即071和271)代表一年中的朱利安日。 如何調整此功能:
import numpy as np
def daylength(dayOfYear, lat):
latInRad = np.deg2rad(lat)
declinationOfEarth = 23.45*np.sin(np.deg2rad(360.0*(283.0+dayOfYear)/365.0))
if -np.tan(latInRad) * np.tan(np.deg2rad(declinationOfEarth)) <= -1.0:
return 24.0
elif -np.tan(latInRad) * np.tan(np.deg2rad(declinationOfEarth)) >= 1.0:
return 0.0
else:
hourAngle = np.rad2deg(np.arccos(-np.tan(latInRad) * np.tan(np.deg2rad(declinationOfEarth))))
return 2.0*hourAngle/15.0
vec_daylength = np.vectorize(daylength)
vec_daylength(dayOfYear, lat)
那么dayOfYear
使用文件名中的數字而不是手動定義200 dayOfYear
變量?
如果它總是最后三位數:
fname = 'A2016071.4d.L3m_OC.nc'
dayOfYear = int( fname.split('.')[0][-3:] )
print( dayOfYear )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.