Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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';int';对象不可下标-强制转换无法按预期工作_Python_Python 3.x_Casting - Fatal编程技术网

Python';int';对象不可下标-强制转换无法按预期工作

Python';int';对象不可下标-强制转换无法按预期工作,python,python-3.x,casting,Python,Python 3.x,Casting,我想读取文件的最后一行,然后获取它的子字符串以将其打印出来 我采取了不同的方法,但都不奏效 file_temp = os.system('cat "/myfile.csv"|tail -1') # line looks like that ['08/19/2020 22:30:14', '26.1', '53.2', '82'] test = str(file_temp[25:-16]) print (test) #same for print (file_temp[2])

我想读取文件的最后一行,然后获取它的子字符串以将其打印出来

我采取了不同的方法,但都不奏效

file_temp = os.system('cat "/myfile.csv"|tail -1')
# line looks like that ['08/19/2020 22:30:14', '26.1', '53.2', '82']
test = str(file_temp[25:-16])
print (test)
#same for
print (file_temp[2])
这将导致以下错误:

temp_test = str(file_temp[25:-16])
TypeError: 'int' object is not subscriptable

无论是否强制转换,它似乎都不起作用。

如果要读取文件的最后一行,这是错误的命令。您必须打开文件,读取它,然后获得所需的行:

file_temp = open("/myfile.csv","r")
lines = file_temp.readlines()
file_temp.close()

print(lines[-1])

函数
os.system()
只返回命令的退出状态。这是一个整数值。这意味着变量
file_temp
只包含一个整数,指示命令是否成功。这不是一个file.os.system返回int到file_testhx,我会试试。即使我打印(文件)我也能看到预期的结果。最后一行在变量中。问题在于使用该行。当您
打印(键入(file_temp))
时会显示什么。也许它是一个更复杂的对象,它不仅包含指示退出状态的整数,而且还包含有关控制台返回的一些信息。你也许可以把它打开,拿到电话线。但是使用
open
更为明智,可以在所有平台上使用。