我正在分析Brooklyn 99的一集,专门试图在文本文件中查找行号,其中Gina说Scully看起来像“茄子”,但我的代码无法正常工作,任何帮助将不胜感激,我正在使用jupyter并且在运行我的代码时没有收到错误消息。
public HttpClient getBasicAuthDefaultHttpClient() {
CredentialsProvider provider = new BasicCredentialsProvider();
UsernamePasswordCredentials creds = new UsernamePasswordCredentials(user,
password);
provider.setCredentials(AuthScope.ANY, creds);
//Fix to avoid HTTP 504 ERROR (GATEWAY TIME OUT ERROR)
RequestConfig.Builder requestBuilder = RequestConfig.custom();
requestBuilder.setConnectTimeout(30 * 1000);
requestBuilder.setConnectionRequestTimeout(30 * 1000);
HttpClientBuilder builder = HttpClientBuilder.create();
builder.setDefaultRequestConfig(requestBuilder.build());
builder.setDefaultCredentialsProvider(provider).build();
return builder.build();
}
答案 0 :(得分:0)
if "like an eggplant"
将始终进入该块,因为“像茄子”并非虚假。您需要检查文件中的实际行是否等于要查找的字符串。因此应为if line == "like an eggplant"
。
此外,您要打印行号。您可以使用enumerate()
来给您所在行的索引,而不仅仅是打印实际的行本身。
for index, line in enumerate(f):
if line.lower() == "like an eggplant":
print(index)
break
最后,与其进行if line == "like an eggplant":
的硬比较,不如做if "like an eggplant" in line:
。如果字符串“像茄子”在脚本行中,即使周围有一些杂音,也将返回true。例如,如果脚本说“吉娜:像茄子”,则进行直接比较将返回false。检查字符串是否在行内将返回True。它给您更多的灵活性。