python 语句循环问题 代码功能,自动删除特定字符串,弄不懂的地方是for循环两次,才执行if从句,怎样修改可以正确运行代码

python 语句循环问题 代码功能,自动删除特定字符串,弄不懂的地方是for循环两次,才执行if从句,怎样修改可以正确运行代码

问题描述:

代码部分:

img

测试结果:

img

请问循环两次的原因,和if从句仅执行一次的原因,以及要实现代码功能,应该怎样修改?

你列表中7.,8,3是数值。要加引号改成字符串

数值 7 不等于字符串“7”

因为你的代码中deal_list只有一项在file_name字符串中,即一个点,所以if条件判断只满足一次,在if语句段里加上一句print('ok')就可看到,只执行一次。如果要去掉字符串特定字符的话,比如“."和’_"等,可以用字符串的replace方法。
代码示例:

file_name='7.83课时1课时2_语文上册试卷'
deal_list=['.','_']
lens=len(file_name)
for a in deal_list:
    if a in file_name:
        file_name=file_name.replace(a,'')
print(file_name)

从字符串内部取元素,也是字符串。所以,你列表的数值都加上引号变成字符串才行