Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.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中文件的困难_Python_File - Fatal编程技术网

python中文件的困难

python中文件的困难,python,file,Python,File,对于家庭作业,我有一个名为p的文件路径和一个名为S的字符串,它等于“parrot”,我需要在p中搜索S并输出S出现的次数。我不能使用正则表达式 这是我的代码: matches = [] matches2 = [] def file_reading(P, S): file1 = open(P, 'r') matches.append(S) file1.close() for S in P: matches2.append(S) print (len(matches2))

对于家庭作业,我有一个名为p的文件路径和一个名为S的字符串,它等于“parrot”,我需要在p中搜索S并输出S出现的次数。我不能使用正则表达式

这是我的代码:

matches = []
matches2 = []
def file_reading(P, S):

  file1 = open(P, 'r')
  matches.append(S)
  file1.close()  
for S in P:
  matches2.append(S)

print (len(matches2))

输出应该是3,但这只输出1,有人能给我指出正确的方向吗?如果需要更多详细信息,请告诉我,我将在中编辑它们。

为了搜索S在p中出现的次数,您只需执行以下操作

p=“/home/shan/shan/shan/editshanfile/exe”

S=“单”

零件=p.split(S)

打印(透镜(零件)-1)

  • 使用给定路径打开文件P
  • 将文件读入变量
  • 在该变量中搜索目标字符串S
  • 关闭文件
  • 打印输出
  • 我怀疑string.count(string2)就是您要查找的:

    >>> big_string = 'a' * 100 + 'parrot' + 'b' * 20 + 'parrot' + 'c' * 50 + 'parrot'
    >>> len(big_string)
    188
    >>> big_string.count('parrot')
    3
    >>>
    

    请张贴有效代码。不仅缩进不正确,
    append
    需要一个参数,而且
    close()
    不需要一个参数,因此运行此操作除了返回TypeErrors之外不会做任何事情。请签出。特别是看
    f.read()
    函数。您的示例确实不完整,因为您没有显示如何使用文件的内容。请显示这些内容。我不知道文件的内容。作业中没有提供这些内容,但是S是“parrot”。请查看问题中的代码。缩进仍然是关闭的。我认为OP理解那么多,即使你似乎跳过了问题的“次数”部分。但也许你可以指出OP代码中的问题,并提出更正建议。