Index

Python Samplifier

  1. built_in_functions
    1. Python abs()
      1. Description Python abs()
    2. Python all()
      1. Description Python all()
    3. Python any()
      1. Description Python any()
    4. Python ascii()
      1. Description Python ascii()
    5. Python bin()
      1. Description Python bin()
    6. Python bool()
      1. Description bool()
    7. Python bytearray()
      1. Description bytearray()
    8. Python bytes()
      1. Description bytes()
    9. Python callable()
      1. Description callable()
    10. Python chr()
      1. Description chr()
    11. Python classmethod()
      1. Description classmethod()
    12. Python compile()
      1. Description compile()
    13. Python complex()
      1. Description complex()
    14. Python delattr()
      1. Description delattr()
    15. Python dict()
      1. Description dict()
    16. Python dir()
      1. Description dir()
    17. Python divmod()
      1. Description divmod()
    18. Python enumerate()
      1. Description enumerate()
    19. Python eval()
      1. Description eval()
    20. Python exec()
      1. Description exec()
    21. Python filter()
      1. Description filter()
    22. Python float()
      1. Description float()
    23. Python format()
      1. Description format()
    24. Python frozenset()
      1. Description frozenset()
    25. Python getattr()
      1. Description getattr()
    26. Python globals()
      1. Description globals()
    27. Python hasattr()
      1. Description hasattr()
    28. Python hash()
      1. Description hash()
    29. Python help()
      1. Description help()
    30. Python hex()
      1. Description hex()
    31. Python id()
      1. Description id()
    32. Python input()
      1. Description input()
    33. Python int()
      1. Description int()
    34. Python isinstance()
      1. Description isinstance()
    35. Python issubclass()
      1. Description issubclass()
    36. Python iter()
      1. Description iter()
    37. Python len()
      1. Description len()
    38. Python list()
      1. Description list()
    39. Python locals()
      1. Description locals()
    40. Python map()
      1. Description map()
    41. Python max()
      1. Description max()
    42. Python memoryview()
      1. Description memoryview()
    43. Python min()
      1. Description min()
    44. Python next()
      1. Description next()
    45. Python object()
      1. Description object()
    46. Python oct()
      1. Description oct()
    47. Python open()
      1. Description open()
    48. Python ord()
      1. Description ord()
    49. Python pow()
      1. Description pow()
    50. Python print()
      1. Description print()
    51. Python property()
      1. Description property()
    52. Python range()
      1. Description Python range()
    53. Python repr()
      1. Description Python repr()
    54. Python reversed()
      1. Description Python reversed()
    55. Python round()
      1. Description Python round()
    56. Python set()
      1. Description Python set()
    57. Python setattr()
      1. Description Python setattr()
    58. Python slice()
      1. Description Python slice()
    59. Python sorted()
      1. Description Python sorted()
    60. Python staticmethod()
      1. Description Python staticmethod()
    61. Python str()
      1. Description Python str()
    62. Python sum()
      1. Description Python sum()
    63. Python super()
      1. Description Python super()
    64. Python tuple() Function
      1. Description tuple() Function
    65. Python type()
      1. Description type()
    66. Python vars()
      1. Description Python vars()
    67. Python zip()
      1. Description Python zip()
    68. Python __import__()
      1. Description Python __impot__()
  2. python1compute
    1. Python Program to Find Hash of File
    2. Python Program to Find the Size (Resolution) of a Image
    3. Python Program to Merge Mails
    4. Python Program to Count the Number of Each Vowel - Source Code: Using a list and a dictionary comprehension
    5. Python Program to Count the Number of Each Vowel - Source Code: Using Dictionary
    6. Python Program to Illustrate Different Set Operations
    7. Python Program to Sort Words in Alphabetic Order
    8. Python Program to Remove Punctuations From a String
    9. Python Program to Multiply Two Matrices - Matrix Multiplication Using Nested List Comprehension
    10. Python Program to Multiply Two Matrices - Source Code: Matrix Multiplication using Nested Loop
    11. Python Program to Transpose a Matrix - Matrix Transpose using Nested List Comprehension
    12. Python Program to Transpose a Matrix - Matrix Transpose using Nested Loop
    13. Python Program to Add Two Matrices - Source Code: Matrix Addition using Nested List Comprehension
    14. Python Program to Check Whether a String is Palindrome or Not
    15. Python Program to Add Two Matrices - Source code: Matrix Addition using Nested Loop
    16. Python Program to Convert Decimal to Binary Using Recursion
    17. Python Program to Find Factorial of Number Using Recursion
    18. Python Program to Find Sum of Natural Numbers Using Recursion
    19. Python Program to Display Fibonacci Sequence Using Recursion
    20. Python Program to Display Calendar
    21. Python Program to Shuffle Deck of Cards
    22. Python Program to Make a Simple Calculator
    23. Python Program to Find Factors of Number
    24. Python Program to Find LCM - Without using GCD function
    25. Python Program to Find HCF or GCD - Source Code: Using Euclidean Algorithm
    26. Python Program to Find LCM - Source Code: Using GCD function
    27. Python Program to Find HCF or GCD - Source Code: Using Loops
    28. Python Program to Find ASCII Value of Character
    29. Python Program to Convert Decimal to Binary, Octal and Hexadecimal
    30. Python Program to Find Numbers Divisible by Another Number
    31. Python Program To Display Powers of 2 Using Anonymous Function
    32. Python Program to Find the Sum of Natural Numbers
    33. Python Program to Find Armstrong Number in an Interval
    34. Python Program to Check Armstrong Number - Source Code: Check Armstrong number of n digits
    35. Python Program to Check Armstrong Number - Source Code: Check Armstrong number (for 3 digits)
    36. Python Program to Print the Fibonacci sequence
    37. Python Program to Display the multiplication Table
    38. Python Program to Find the Factorial of a Number
    39. Python Program to Print all Prime Numbers in an Interval
    40. Python Program to Find the Largest Among Three Numbers
    41. Python Program to Check Prime Number
    42. Python Program to Check Leap Year
    43. Python Program to Check if a Number is Odd or Even
    44. Python Program to Check if a Number is Positive, Negative or 0 Source Code: Using Nested if
    45. Python Program to Check if a Number is Positive, Negative or 0 Source Code: Using if...elif...else
    46. Python Program to Convert Celsius To Fahrenheit
    47. Python Program to Generate a Random Number
    48. Python Program to Convert Kilometers to Miles
    49. Python Program to Swap Two Variables Source Code: Without Using Temporary Variable
    50. Python Program to Swap Two Variables Source Code: Using temporary variable
    51. Python Program to Solve Quadratic Equation
    52. Python Program to Calculate the Area of a Triangle
    53. Python Program to Find the Square Root Source code: For real or complex numbers using cmath module
    54. Python Program to Find the Square Root Source Code: For positive numbers using exponent **
    55. Python Program to Add Two Numbers By One Line
    56. Python Program to Add Two Numbers Source Code: Add Two Numbers Provided by The User
    57. Python Program to Add Two Numbers
    58. Python Program to Print Hello world!
  3. python2based
    1. firstone
    2. second
    3. third
    4. fourth
    5. fifth
    6. sixth
    7. seventh
    8. eighth
    9. ninth
    10. tenth

sorting_in_python

  1. Description of sorting function

Description eval()


Python eval()


The eval() method parses the expression passed to this method and runs python expression (code) within the program.

In simple terms, the eval() method runs the python code (which is passed as an argument) within the program.
The syntax of eval() is:
eval(expression, globals=None, locals=None)

eval() Parameters


The eval() takes three parameters:
• expression - this string as parsed and evaluated as a Python expression
• globals (optional) - a dictionary
• locals (optional)- a mapping object. Dictionary is the standard and commonly used mapping type in Python.
The use of globals and locals will be discussed later in this article.

Return Value from eval()


The eval() method returns the result evaluated from the expression.

Example 1: How eval() works in Python?


------------------------------------------------------------------------------------------------------
x = 1
print(eval('x + 1'))
------------------------------------------------------------------------------------------------------
When you run the program, the output will be:
2
Here, the eval() evaluates the expression x + 1 and print it.

Example 2: Practical Example to Demonstrate Use of eval()


--------------------------------------------------------------------------------------------------------
# Perimeter of Square
def calculatePerimeter(l):
return 4*l

# Area of Square
def calculateArea(l):
return l*1

property = input("Type a function: ")

for l in range(1, 5):
if (property == 'calculatePerimeter(l)'):
print("If length is ", l , ", Perimeter = ", eval(property))
elif (property == 'calculateArea(l)'):
print("If length is ", l , ", Area = ", eval(property))
else:
print('Wrong Function')
break

----------------------------------------------------------------------------------------------------------------
The output of the above program will be:
Type a function: calculateArea(l)
If length is 1 , Area = 1
If length is 2 , Area = 2
If length is 3 , Area = 3
If length is 4 , Area = 4

Why you should be careful while using eval()?


Consider a situation, you are using a Unix system (macOS, Linux etc) and you have imported os module. The os module provides portable way to use operating system functionalities like: read or write a file.
If you allow users to input a value using eval(input()), the user may issue commands to change file or even delete all the files using command os.system('rm -rf *').
If you are using eval(input()) in your code, it's a good idea to check which variables and methods the user can use. You can see which variables and methods are available using dir() method.
----------------------------------------------------------------------------------
from math import *
print(eval('dir()'))
------------------------------------------------------------------------------------
When you run the program, the output would be something like:

['__annotations__', '__builtins__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'squareRoot', 'tan', 'tanh', 'tau', 'trunc']


Restricting the Use of Available Methods and Variables in eval()


More often than not, all the available methods and variables used in the expression (first parameter to the eval()) may not be needed, or even may have a security hole. You may need to restrict the use of these methods and variables for eval(). You can do so by passing optional globals and locals parameters (dictionaries) to the eval() method.

1. When both globals and locals parameters omitted



If both parameters are omitted (as in our earlier examples), the expression is executed in the current scope. You can check the available variables and methods using following code:
print(eval('dir()'))

2. Passing globals parameter; locals parameter is omitted


The globals and locals parameters (dictionaries) are used for global and local variables respectively. If the locals dictionary is omitted, it defaults to globals dictionary. Meaning, globals will be used for both global and local variables.
Note: You can check the current global and local dictionary in Python using globals() and locals() built-in methods respectively.

Passing empty dictionary as globals parameter


------------------------------------------------------------------------------------------
from math import *
print(eval('dir()', {}))

# The code below will raise an exception
# print(eval('sqrt(25)', {}))
-------------------------------------------------------------------------------------------
If you pass an empty dictionary as globals, only the __builtins__ are available to expression (first parameter to the eval()). Even though we have imported math module in the above program, expression can't access none of the functions provided by the math module.
When you run the program, the output will be:
['__builtins__']


Making Certain Methods available


----------------------------------------------------------------------------------------------
from math import *
print(eval('dir()', {'sqrt': sqrt, 'pow': pow}))
-----------------------------------------------------------------------------------------------
Here, the expression can also use sqrt() and pow() methods along with __builtins__.
Also, it's possible to change the name of the method available for the expression according to your wish.
------------------------------------------------------------------------------------------------
from math import *
print(eval('dir()', {'squareRoot': sqrt, 'pow': pow}))

# Using squareRoot in Expression
print(eval('squareRoot(9)', {'squareRoot': sqrt, 'pow': pow}))
--------------------------------------------------------------------------------------------------
In the above program, squareRoot() calculates the square root (similar functionality like sqrt()). However, trying to use sqrt() will raise an error.

Restricting the Use of built-ins


You can restrict the use of __builtins__ in the expression as follows:
eval(expression, {'__builtins__': None})

3. Passing both globals and locals dictionary


You can make needed functions and variables available for use by passing locals dictionary. For example:
--------------------------------------------------------------------------------------------------------
from math import *

a = 5
print(eval('sqrt(a)', {'__builtins__': None}, {'a': a, 'sqrt': sqrt}))
----------------------------------------------------------------------------------------------------------
When you run the program, the output will be:
2.23606797749979 In this program, the expression (first parameter to the eval) can have sqrt() method and variable a only. All other methods and variables are unavailable.
Restricting the use of eval() by passing globals and locals dictionary will make your code secure particularly when you are using input provided by the user to the eval() method.