def bdate_range(start=None, end=None, periods=None, freq='<STR_LIT:B>', tz=None,<EOL>normalize=True, name=None, weekmask=None, holidays=None,<EOL>closed=None, **kwargs):
if freq is None:<EOL><INDENT>msg = '<STR_LIT>'<EOL>raise TypeError(msg)<EOL><DEDENT>if is_string_like(freq) and freq.startswith('<STR_LIT:C>'):<EOL><INDENT>try:<EOL><INDENT>weekmask = weekmask or '<STR_LIT>'<EOL>freq = prefix_mapping[freq](holidays=holidays, weekmask=weekmask)<EOL><DEDENT>except (KeyError, TypeError):<EOL><INDENT>msg = '<STR_LIT>'.format(freq=freq)<EOL>raise ValueError(msg)<EOL><DEDENT><DEDENT>elif holidays or weekmask:<EOL><INDENT>msg = ('<STR_LIT>'<EOL>'<STR_LIT>').format(freq=freq)<EOL>raise ValueError(msg)<EOL><DEDENT>return date_range(start=start, end=end, periods=periods,<EOL>freq=freq, tz=tz, normalize=normalize, name=name,<EOL>closed=closed, **kwargs)<EOL>
Return a fixed frequency DatetimeIndex, with business day as the default
frequency

Parameters
----------
start : string or datetime-like, default None
    Left bound for generating dates.
end : string or datetime-like, default None
    Right bound for generating dates.
periods : integer, default None
    Number of periods to generate.
freq : string or DateOffset, default 'B' (business daily)
    Frequency strings can have multiples, e.g. '5H'.
tz : string or None
    Time zone name for returning localized DatetimeIndex, for example
    Asia/Beijing.
normalize : bool, default False
    Normalize start/end dates to midnight before generating date range.
name : string, default None
    Name of the resulting DatetimeIndex.
weekmask : string or None, default None
    Weekmask of valid business days, passed to ``numpy.busdaycalendar``,
    only used when custom frequency strings are passed.  The default
    value None is equivalent to 'Mon Tue Wed Thu Fri'.

    .. versionadded:: 0.21.0

holidays : list-like or None, default None
    Dates to exclude from the set of valid business days, passed to
    ``numpy.busdaycalendar``, only used when custom frequency strings
    are passed.

    .. versionadded:: 0.21.0

closed : string, default None
    Make the interval closed with respect to the given frequency to
    the 'left', 'right', or both sides (None).
**kwargs
    For compatibility. Has no effect on the result.

Returns
-------
DatetimeIndex

Notes
-----
Of the four parameters: ``start``, ``end``, ``periods``, and ``freq``,
exactly three must be specified.  Specifying ``freq`` is a requirement
for ``bdate_range``.  Use ``date_range`` if specifying ``freq`` is not
desired.

To learn more about the frequency strings, please see `this link
<http://pandas.pydata.org/pandas-docs/stable/timeseries.html#offset-aliases>`__.

Examples
--------
Note how the two weekend days are skipped in the result.

>>> pd.bdate_range(start='1/1/2018', end='1/08/2018')
DatetimeIndex(['2018-01-01', '2018-01-02', '2018-01-03', '2018-01-04',
           '2018-01-05', '2018-01-08'],
          dtype='datetime64[ns]', freq='B')