[num] Add bases to input parsing
This commit is contained in:
		
							parent
							
								
									033e35b8fb
								
							
						
					
					
						commit
						9e7d3b8585
					
				
					 1 changed files with 9 additions and 1 deletions
				
			
		
							
								
								
									
										10
									
								
								bin/num
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								bin/num
									
										
									
									
									
								
							| 
						 | 
					@ -31,7 +31,15 @@ def main():
 | 
				
			||||||
    for n in sys.argv[1:]:
 | 
					    for n in sys.argv[1:]:
 | 
				
			||||||
        print('---')
 | 
					        print('---')
 | 
				
			||||||
        try:
 | 
					        try:
 | 
				
			||||||
            num = int(n)
 | 
					            base = 10
 | 
				
			||||||
 | 
					            n = n.lower()
 | 
				
			||||||
 | 
					            if n.startswith('0x'):
 | 
				
			||||||
 | 
					                base = 16
 | 
				
			||||||
 | 
					            if n.startswith('0o'):
 | 
				
			||||||
 | 
					                base = 8
 | 
				
			||||||
 | 
					            if n.startswith('0b'):
 | 
				
			||||||
 | 
					                base = 2
 | 
				
			||||||
 | 
					            num = int(n, base=base)
 | 
				
			||||||
        except ValueError:
 | 
					        except ValueError:
 | 
				
			||||||
            print('Error: cannot parse string as int: {}'.format(n))
 | 
					            print('Error: cannot parse string as int: {}'.format(n))
 | 
				
			||||||
        else:
 | 
					        else:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue