Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.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
my_字符串[0]将字符串索引抛出Python中的范围之外_Python_String - Fatal编程技术网

my_字符串[0]将字符串索引抛出Python中的范围之外

my_字符串[0]将字符串索引抛出Python中的范围之外,python,string,Python,String,我从日志中提取api调用作为字符串,将它们存储在一个文件中,然后在另一个进程中从这个文件中读取它们。 我想捕捉现有的行,长度大于5,以双引号开始 if (input_string): if (len(input_string)>5): if (input_string[0] == '"'): 引发以下异常: File "/home/api_calls_simulator.py", line 58, in doWork if (input_string[0

我从日志中提取api调用作为字符串,将它们存储在一个文件中,然后在另一个进程中从这个文件中读取它们。 我想捕捉现有的行,长度大于5,以双引号开始

 if (input_string):
    if (len(input_string)>5):
        if (input_string[0] == '"'):
引发以下异常:

File "/home/api_calls_simulator.py", line 58, in doWork
    if (input_string[0] == '"'):
IndexError: string index out of range
输入字符串来自:

call_file = open("./myfile.txt")
for input_string in call_file:
匹配行的示例:

"/api/v2/product/id/2088?user_name=website&key=secretkey&format=json" 200 2790 "-" hit

我这里遗漏了什么?

您能给我们输入字符串的值或任何可能帮助您的信息吗?在最后一次检查是否以双引号开头之前打印,并检查在抛出错误的那一刻输入字符串的值是多少。也可以像上面提到的卢卡斯那样使用
somestring.startswith()
。还有三个嵌套的
,如果
可以组合在一行中,则无需嵌套它们。您确定
input\u string
是一个字符串,而不仅仅是一些伪集合吗?请尝试将此代码放在Try except块周围,并在出现错误时打印字符串。还有,那些真的是弦吗?AFAIK字符串在python中是不可变的,因此您不应该影响它的内容,但是如果是其他类,另一个线程可能会更改它。使用try/catch块来尝试if并捕获异常,在例外情况下,请打印
input\u string
及其类型。您能告诉我们input\u string的值或任何可能对您有帮助的信息吗?在最后一次检查是否以双引号开头之前进行打印,并检查在抛出错误的那一刻
input\u string
的值是多少。也可以像上面提到的卢卡斯那样使用
somestring.startswith()
。还有三个嵌套的
,如果
可以组合在一行中,则无需嵌套它们。您确定
input\u string
是一个字符串,而不仅仅是一些伪集合吗?请尝试将此代码放在Try except块周围,并在出现错误时打印字符串。还有,那些真的是弦吗?AFAIK字符串在python中是不可变的,因此您不应该影响它的内容,但是如果是其他类,另一个线程可以更改它。使用try/catch块,尝试if并捕获异常,然后在异常中打印
输入字符串及其类型。