Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何获取数字变量的最后一个数字?_Python_Numbers - Fatal编程技术网

Python 如何获取数字变量的最后一个数字?

Python 如何获取数字变量的最后一个数字?,python,numbers,Python,Numbers,我知道如何获取数字变量的最后一位: num = 21 if num % 10 == 1: num = num % 10 print '%s' % num 它将返回1。 但是如何得到变量的最后几位呢? 我有 bytes = input("Bytes: ") 对于这个示例,我想去掉最后8个数字,将其转换为GB。现在,我需要去掉最后8位数字,并将其保存到另一个变量中以供其他使用。然后使用剩下的8位数字,去掉5位,得到MB。如何从末尾去掉一些数字并将其保存到另一个变量 是否要删除值n

我知道如何获取数字变量的最后一位:

num = 21
if num % 10 == 1:
    num = num % 10
    print '%s' % num
它将返回1。 但是如何得到变量的最后几位呢? 我有

bytes = input("Bytes: ")

对于这个示例,我想去掉最后8个数字,将其转换为GB。现在,我需要去掉最后8位数字,并将其保存到另一个变量中以供其他使用。然后使用剩下的8位数字,去掉5位,得到MB。如何从末尾去掉一些数字并将其保存到另一个变量

是否要删除值n的最后k位?这就是Python 2中的
n//10**k

你想把n分成前导数字,然后是最后的k数字吗<代码>n_msd,n_lsd=divmod(n,10**k)


如果您可以安装库,我为“最高有效数字”写了“msd”,为“最低…”写了“lsd”。可以帮助您将数字转换为文件大小格式

若并没有,你们可以使用一个循环来存储变量中的数字并计算它

def size_cul(num):
    for x in ['bytes', 'Kb', 'Mb', 'Gb']:
        if -1024 < num < 1024:
            return "%3.1f %s" % (num, x)

        num = num / 1024.0
    return "%3.1f %s" % (num, 'TB')

print(size_cul(1024))   

为什么不转换成字符串、切片,然后再转换回来呢

num = 12345678
first_four = int(str(num)[:4])
last_four = int(str(num)[4:])
middle_two = int(str(num)[3:5])

它不是很优雅,但很简单。

谢谢,但我如何将删除的数字保存到另一个变量?你的问题应该是
如何获得数字的最后一位。由于它还可以转换数字、日期等,因此更具人性化,但它的名称更好。谢谢您的推荐:)
num = 12345678
first_four = int(str(num)[:4])
last_four = int(str(num)[4:])
middle_two = int(str(num)[3:5])