Content · Programming · Python

Python math.trunc() Function: Usage and Examples

Discard a numeric value’s fractional part toward zero.

2 views Published Oct 17, 2026 Updated Oct 18, 2026 Admin

Discard a numeric value’s fractional part toward zero.

What You Will Learn


trunc(value) is based on the __trunc__ protocol and differs from floor() for negative numbers.

For floating-point results, remember that stored values are approximations. Rounding a displayed value does not change the exact value used by later calculations.

Step-by-Step Example


The example below makes the behavior visible with small input values that you can change safely.

import math
print(math.trunc(-3.9))

How the Example Works


  • The imports provide the standard-library tools used in the demonstration: math.
  • The print() calls make the return values or state visible so you can compare them with the explanation and check your prediction.

For the chosen input, the expression math.trunc(-3.9) prints -3. Compare that result with the rule above before you change the argument.

Expected output from the example:

-3

Another Example: Compare the Results


Try a second input and compare it with the first. Notice whether the result changes in type, value, order, or number of items.

import math
print(math.trunc(3.99), math.trunc(-3.99))

Expected output:

3 -3

When You Would Use This


This operation can support measurements, numeric reports, simulations, or input validation. Choose integer operations when exact integer answers are required, and check floating-point rounding when displaying measured values. Validate units and input domains before using the result in a calculation.

Practice: Modify the Code


Compare trunc(), floor(), and ceil() for -2.7.

Verify the changed output against the behavior described above, including the relevant invalid or boundary case.

For complete parameters and version details, consult the official Python documentation.

Common Beginner Mistakes


  • Expecting truncation to round to the nearest integer.
  • Skipping invalid or boundary inputs when adapting a numeric function to real user data.

Key Takeaways


  • Discard a numeric value’s fractional part toward zero.
  • trunc(value) is based on the __trunc__ protocol and differs from floor() for negative numbers.
  • Apply this operation only after checking the assumptions and input conditions shown in the example.
Share this resourceSend this page to someone who may find it useful.