72 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			72 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								title: How to Convert Strings into Integers in Python
							 | 
						||
| 
								 | 
							
								---
							 | 
						||
| 
								 | 
							
								## How to Convert Strings into Integers in Python
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Just like the `str()` built-in, Python also offers a handy built-in which takes a string object as an argument and returns the corresponding integer object.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### Example Usage:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								# Here age is a string object
							 | 
						||
| 
								 | 
							
								age = "18"
							 | 
						||
| 
								 | 
							
								print(age)
							 | 
						||
| 
								 | 
							
								# Converting string to integer
							 | 
						||
| 
								 | 
							
								int_age = int(age)
							 | 
						||
| 
								 | 
							
								print(int_age)
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								Output
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								18
							 | 
						||
| 
								 | 
							
								18
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								Here although the output is visually similar but you should keep in mind that the first line prints a string object while the line next to it prints a integer object which is further illustrated in the next example:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								age = "18"
							 | 
						||
| 
								 | 
							
								print(age+2)
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								Output:
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								Traceback (most recent call last):
							 | 
						||
| 
								 | 
							
								  File "<stdin>", line 1, in <module>
							 | 
						||
| 
								 | 
							
								TypeError: cannot concatenate 'str' and 'int' objects
							 | 
						||
| 
								 | 
							
								````
							 | 
						||
| 
								 | 
							
								The error should make it clear to you that you need to convert the `age` object to an integer before adding something to it.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								age = "18"
							 | 
						||
| 
								 | 
							
								age_int = int(age)
							 | 
						||
| 
								 | 
							
								print(age_int+2)
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								Output:
							 | 
						||
| 
								 | 
							
								```py
							 | 
						||
| 
								 | 
							
								20
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								But you should keep in mind some special cases:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								1. A floating point(an integer with fractional part) as an argument will return the float rounded down to the nearest whole integer.
							 | 
						||
| 
								 | 
							
								   For example : `print(int(7.9))` will print `7`.
							 | 
						||
| 
								 | 
							
								   Also `print(int("7.9"))` will result an error since the string is an invalid argument to convert to an integer.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								   ```py
							 | 
						||
| 
								 | 
							
								   Traceback (most recent call last):
							 | 
						||
| 
								 | 
							
								      File "<stdin>", line 1, in <module>
							 | 
						||
| 
								 | 
							
								    ValueError: invalid literal for int() with base 10: '7.9'
							 | 
						||
| 
								 | 
							
								   ```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								2. Also any integer in words if given as an argument will return the same error as above:
							 | 
						||
| 
								 | 
							
								   `print(int("one"))` will give an error as follows:
							 | 
						||
| 
								 | 
							
								   
							 | 
						||
| 
								 | 
							
								    ```py
							 | 
						||
| 
								 | 
							
								    Traceback (most recent call last):
							 | 
						||
| 
								 | 
							
								      File "<stdin>", line 1, in <module>
							 | 
						||
| 
								 | 
							
								    ValueError: invalid literal for int() with base 10: 'one'
							 | 
						||
| 
								 | 
							
								    ```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#### More Information:
							 | 
						||
| 
								 | 
							
								Official documentation for `int()` built-in can be found <a href='https://docs.python.org/3.6/library/functions.html#int' target='_blank' rel='nofollow'>here</a>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 |