Python python 字符串 in 报错

尚酷米 · 2019年03月01日 · 最后由 陈子昂 回复于 2019年03月02日 · 1719 次阅读

大家有遇到过 字符串 使用 in 报错的情况吗,
今天面试时面试官多次告诉我字符串使用 in 会报错。
刚刚测试时没有发现报错的情况,除了文件不存在时。

#coding=utf-8
import locale
with open("./sss",encoding=locale.getdefaultlocale()[1]) as f:
    for line in f.readlines():
        if "err" in line:
            print(line.encode(locale.getdefaultlocale()[1]).decode())

a="萨顶顶萨顶顶"
if "sds" in a:
    print("存在")
共收到 3 条回复 时间 点赞

一般不会报错吧

我看了一下你写的逻辑,猜测他遇到报错的原因是因为 存在空行的情况 你可以问下 是这个原因吗?

你可以理解是 第一个区域 in 第二个区域去比对(第二个区域可迭代对象,第一个区域小于等于第二个区域,就可以走进去)。
if 或者 for 是让程序去选择执行路径走得进去和走不进去。测试这块大家都不容易,不要纠结。

if "aaa" in {"name":123}:  #比较简单并且又不合法的。
    pass    
尚酷米 关闭了讨论 11月06日 18:20
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册