In Python, we use a different method to solve mathematical problems: the log() function. The math.log() function uses a math library to calculate the natural log of a specific number. It takes 2 values: including number and base (optional), to calculate the natural logarithm.
In example 1, we find the log of value with the base like log(x,(base)). This function uses two parameters: the number that is x, and the other is the base. It calculates the log of the base of argument x, expressed as log(x) / log(base).
print ("logarithm of 17 is : ", end="")
# Printing the log base 3 of 8
print ("Logarithm base 3 of 8 is : ", end="")
As we can see, the result of the math.log() method.
In Example 2, we take a number as input from the user and store it in “number” variable and take another value(base) as input from the user stored in its variable “x”. Pass number and x value in the parameter of math.log() and get output through a print statement in python language.
#Take input from user
number = int(input("Enter the number:"))
x = int(input("Enter the base:"))
print("log of number is:", math.log(number))
print("log of number is:", math.log(number, x))
When we execute the code, we get the following result:
In Logarithm with a custom base example, we created a function called logarithm() and passed base value and variable as a number in its parameter. Inside the function, we have initialized two variables, “x” and “y,” that store the math.log() method and return the variable. Print the function result as logarithm(x,y) in the last step.
x = math.log(number)
y = math.log(base)
# log with custom base:
# base number
print(logarithm( 4 , 17 ) )
print(logarithm( 2 , 100 ) )
This example shows the result of the above-written code.
In Example 4, we have implemented an if / else statement to check if the number is negative or not. We never get math domain errors due to condition statements.
The value error: MathDomain error comes when we pass zero or negative numbers, which can’t be calculated.
If we calculate the log of zero, math domain errors also occur.
value = -23
if int(value) >= 0:
print("We can't calculate the negative logrithm value")
Output is presented here:
Another code example without if-else condition to show the math domain error:
value = 0
Output is presented here:
The numpy.log() method is a mathematical feature that allows you to calculate a log, where a is the sum of the number in the input array.The inverse of exp() is the log, so log(exp(a)) = a. In Example 5, we initialize the variable “x” and store the 5 index array in it. Then initialize another variable “y” and store the value of function np.log(x).
x = [7, 11, 17, 3**9]
print ("Array with different values : ", x)
y = numpy.log(x)
print ("Result, "y)
We will get the result after execution:
The log1p() method is a built-in Python function that takes the natural log of 1+x (base x) when given a value. It takes a value and returns the natural log 1+value on the base x.
When we enter another value other than a number the function return a TypeError that indicate “a float is required”
In example 6, we take the input value from the user; then, we compute the logarithm(1+a) of 13.
# positive integer
number = int(input("Enter number: "))
print("Log of the value is: ", math.log1p(number))
After the execution of this code, the result is given underneath.
The function uses one value as a parameter and computes the log having base 2. The reason for using the base 2 value is we get a more accurate result, and if we pass no parameter in the function and the Type error message is displayed. We solve the below example with base value 2.
We print two statements, one depicts which function contains parameter value, we get the required result through this statement, and the other states which function doesn’t contain parameter value (no argument pass). So, in that case, we get the Type error message.
print("Log of the value is: ",math.log2(37))
print("Log of the value is: ",math.log2())
When we executed the program, the two different results appeared that are explained briefly in the upper paragraph.
In the math function, we have studied many distinct log techniques. If we use any log functions with a negative value, we will get a math domain error. It contains a value of the log method and uses a library “math”, allowing us to calculate logs with just one code line. In the first example, we have simply passed the value as a parameter in math.log() and gotten a simple result. In the second example, we take input from the user in compile time to get our desired result. In example 3, we use the function for checking how custom bases work in the python program. In the fourth example, we have used the condition statement to overcome the error problem and replace it with the if/else condition. In example 5, we have used numpy.log() to check how arrays work with logarithms. In the sixth example, we checked the natural logarithm with function log1p() equal to log(1+x). In the last example, we have used math.log2() function. We hope you will understand the python log function from all the above-explained examples.