python leetcode
504. Base 7
Given an integer, return its base 7 string representation.
将十进制转为7进制,其他进制的转换类似。
记住几个常见的内置函数。bin(),hex(),oct()....分别是十进制数转二进制,十六机制,和八进制。
Example 1:
Input: 100 Output: "202"
Example 2:
Input: -7 Output: "-10"
Note: The input will be in range of [-1e7, 1e7].
#coding=utf-8
#编写10进制转7进制的函数,并返回字符串形式
class Solution(object):
def convertToBase7(self, num):
"""
:type num: int
:rtype: str
"""
if num==0:return '0'
if num<0:
return '-'+self.convertToBase7(-num)
result=''#保存结果的
while num>0:
result=str(num%7)+result
num//=7
return result
def convertToBase7_1(self,num):
if num==0:return '0'
n,res=abs(num),''#都按正数来处理,最后进行判断,为负数加个负号就行了
while n:
res=str(n%7)+res
n/=7
return res if num>0 else '-'+res
S=Solution()
print S.convertToBase7_1(-7)