Вот более простое решение. Объединив части даты как одну строку от наиболее значимого до наименее значимого, мы можем просто провести сравнение строк по результату.
Другими словами, сравнение значений YYYYMMDDAMPMHHMM даст желаемый результат без необходимости индивидуально сравнить каждый сегмент даты. Это значение получается путем конкатенации различных частей строки даты, извлеченных второй командой FOR.
call: getfiledatestr path \ file1.txt file1time call: getfiledatestr path \ file2.txt file2time if % file1time% equ% file2time% (echo path \ file1.txt - это тот же возраст, что и путь \ file2.txt с точностью до минуты) else if% file1time% lss% file2time% (echo path \ file1.txt старше пути \ file2.txt) else (echo path \ file1.txt новее, чем путь \ file2.txt) goto: eof @REM use: @REM: getfiledatestr file-path envvar @REM результат возвращается в% envvar%: getfiledatestr для %% f in (% 1) do set getfiledatestr = %% ~ tf @REM для MM / DD / YYYY HH: использование MM AMPM: appendpadded% 2 %% c %% b %% a %% f %% d %% e @ REM для DD / MM / YYYY HH: использование MM AMPM: appendpadded% 2 %% c %% b %% a %% f %% d %% e @REM для YYYY / DD / MM HH: использование MM AMPM: appendpadded% 2 %% a %% b %% c %% f %% d %% e set% 2 = for / f "tokens = 1,2,3,4,5,6 delims = /:" %% a in ("% getfiledatestr%") do (call: appendpadded% 2 %% c %% b %% a %% f %% d %% e) @goto: eof @REM Принимает env var в качестве первого параметра @REM и значения, добавляемые в качестве остальных параметров, @REM справа заполняет все значения с ведущими 0 до 4-х мест: appendpadded set temp_value = 000% 2 call: expand set% 1 = %%% 1 %%%% temp_value: ~ -4 %% shift / 2, если "% 2" neq "" goto appendpadded set temp_value = @goto: eof @REM заставляет все переменные полностью расширяться: expand% * @goto: eof
вы можете использовать вместо этого:
axes.set_xticks(ticks, minor=False)
и
axes.set_xticklabels(labels, fontdict=None, minor=False)
NameError: name 'kwargs' is not defined
, поэтому я удалил**kwargs
, затем он работает. – Beginner 4 June 2018 в 19:41