Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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 3.x 基于if语句写入或读取文件_Python 3.x_File - Fatal编程技术网

Python 3.x 基于if语句写入或读取文件

Python 3.x 基于if语句写入或读取文件,python-3.x,file,Python 3.x,File,我正在编写一个脚本,如果文本文件不包含某些内容,它将运行一个程序,如果包含,则不执行任何操作。它继续运行程序,而不是什么都不做,即使文本文件中确实包含它要查找的内容 这是我的密码: my_path=os.path.abspath(os.path.dirname(u文件_u)) path=os.path.join(我的路径,../etc/4532/7.txt) checkw=open(路径“w+”) 打印(选中w.read()) 如果checkw.read()中的“boot state=True”

我正在编写一个脚本,如果文本文件不包含某些内容,它将运行一个程序,如果包含,则不执行任何操作。它继续运行程序,而不是什么都不做,即使文本文件中确实包含它要查找的内容

这是我的密码:

my_path=os.path.abspath(os.path.dirname(u文件_u))
path=os.path.join(我的路径,../etc/4532/7.txt)
checkw=open(路径“w+”)
打印(选中w.read())
如果checkw.read()中的“boot state=True”:
打印(“状态:真”)
检查w.close()
其他:
打印(检查W)
打印(“系统:引导到img加载程序”)
系统(“~/master/root/xf10/\uu img-builder//set.py”)
checkw.write(“启动状态=True”)

提前谢谢。

这里有两个问题:

  • 您可以在
    w+
    模式下打开文件。这将覆盖文件(如果存在)。如果要读取现有文件,请使用
    r
    r+
  • 第4行的
    print
    调用将指针移动到文件末尾。因此,下一个读取调用将不返回任何内容。尝试删除打印或调用
    checkw.seek(0,0)
    移回文件开头

  • 我试过了,但它还是做了同样的事情,它看不到它正在寻找的文本,你说的调试是什么意思?