1. Python Software Foundation. The Python Language Reference, Version 3.12. Section 2.4.4. Integer literals. The documentation states, "Underscores are permitted for grouping digits for enhanced readability. An underscore must be surrounded by digits or other underscores." This validates options B and D.
2. Python Software Foundation. PEP 515 -- Underscores in Numeric Literals. This official proposal, which was accepted and implemented, details the rationale and syntax for using underscores in numeric literals, directly supporting option B.
3. Python Software Foundation. The Python Language Reference, Version 3.12. Section 2.4.5. Floating-point literals. This section explains that the 'e' or 'E' notation is used to define floating-point numbers, which confirms why option A is incorrect for an int type.
4. Guttag, J.V. (2016). Introduction to Computation and Programming Using Python, With Application to Understanding Data. MIT Press. Chapter 2, Section 2.1 Objects, Expressions, and Numerical Types. This text clarifies that standard integer literals consist of a sequence of digits, and floating-point literals can use scientific notation.