python - 在 if 语句下将字符串附加到新列表

标签 python python-3.x numpy

使用这一行读取文件目录后,

x = glob.glob('**/*.txt', recursive = True)

我得到了这个输出,

doping_center9_2.txt
doping_center9_3.txt
doping_center9_4.txt
doping_center9_5.txt
n_eff_doping_center1_1.txt
n_eff_doping_center1_2.txt
n_eff_doping_center1_3.txt
n_eff_doping_center1_4.txt

现在,我想创建另一个列表并附加以 n_eff 开头的字符串。我试过这个:

n_eff = []
for i in range(len(x)):
    if x[i] == x[i].startswith("n_eff"):
         n_eff.append(x[i])

不幸的是,那里没有发生任何事情,甚至没有错误。

最佳答案

问题是 startswith 正在返回 bool 值(TrueFalse)。然后检查 x[i] 是否等于 bool 值,该值始终为 false,因为它包含字符串。

改变条件应该有助于: 如果 x[i].startswith("n_eff"):

关于python - 在 if 语句下将字符串附加到新列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49950099/

相关文章:

python - 定期切片 2D numpy 数组

python - 使用 np.einsum 计算普通最小二乘系数

python - 如何在没有黑色背景的情况下将 png 图像作为 Sprite 上传到 pygame 中?

python-3.x - Tensorflow - model.fit 中的值错误 - 如何修复

json - Firebase 云消息服务器帐户 key 已过期

python - 升级默认 python 版本或在 Linux 中安装另一个 python 版本

python - 如何使用 numpy 数组中的 RGBA 数据列表进行 alpha 合成?

python - sqlalchemy 计算后代数

python - 从第一行开始在pycharm控制台中执行多行输入

python - 从列表中删除空字符串