Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.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
txt文件python中的热跳过特殊字符_Python_Character_Skip - Fatal编程技术网

txt文件python中的热跳过特殊字符

txt文件python中的热跳过特殊字符,python,character,skip,Python,Character,Skip,我在读取txt文件时遇到一些问题。我要做的是读取文件(大约360个)并绘制一个图。除了在我的文件中有一个特殊的字符,例如us:,否则一切都正常。当我的读取函数发现该字符时,它崩溃。有没有办法跳过它?我的代码: import os import matplotlib.pyplot as plt import numpy as np i = 10 j = 0 X = [] Y = [] Z = [] k = 0 A = np.zeros([360,719]) for i in range(10,

我在读取txt文件时遇到一些问题。我要做的是读取文件(大约360个)并绘制一个图。除了在我的文件中有一个特殊的字符,例如us:,否则一切都正常。当我的读取函数发现该字符时,它崩溃。有没有办法跳过它?我的代码:

import os
import matplotlib.pyplot as plt
import numpy as np

i = 10
j = 0
X = []
Y = []
Z = []
k = 0
A = np.zeros([360,719])

for i in range(10,360,10):
        X = []
        Y = []
        if len(str(i)) == 2:
            data = open(dir + '\\150317_ScPONd_0%s_radio.txt'%i, 'r')
        else:
            data = open(dir + '\\150317_ScPONd_%s_radio.txt'%i, 'r')
        z = data.readlines()
        data.close()
        for line in z:
            if not line.startswith('$'):
                data_2 = line.split('\t')
                X.append(data_2[0])
                Y.append(data_2[1])
        A[j,:] = X
        A[(j+1),:] = Y
下面是我的文件的外观:
有没有办法跳过那些“$”行?对不起,那张照片,我不知道怎样贴得更好

Thaks to@user1753919我找到了答案。如果有人仍然对此感兴趣,以下是工作代码:

for i in range(10,360,10):
        X = []
        Y = []
        if len(str(i)) == 2:
            data = np.genfromtxt(dir + '\\150317_ScPONd_0%s_radio.txt'%i,skip_header = 12)
        else:
            data = np.genfromtxt(dir + '\\150317_ScPONd_%s_radio.txt'%i,skip_header = 12)
        for line in data:
            X.append(line[0])
            Y.append(line[1])
        A[j,:] = X
        A[(j+1),:] = Y
        plt.plot(A[j,:],A[(j+1),:],label = '{} K'.format(i))
        plt.hold
        j = j+2

genfromtxt
太过分了

np.loadtxt(file, comments='$')

为什么不使用np.genfromtxt?如果line.startswith(“$”)==False:,您是否尝试过
?@whatstthepoint是的,我尝试过,但失败了。@user1753919非常感谢您,它很有效!我甚至不知道像genfromtxt这样的阅读选项。