2013-11-21 107 views
0
all_courses=open("E:/we/aa.txt","r").readlines() 
completed_ones=open("E:/we/aaa.txt","r") 
read_completed_ones=completed_ones.readlines() 
my_dict={} 
my_dict["completed courses"]=read_completed_ones 
for line in all_courses: 
    if line.strip().startswith("#"): 
     continue 
    splitted=line.split(",") 
    print read_completed_ones 
    courses_remaining=splitted[2] 
    print read_completed_ones[3] 
    if courses_remaining==("") and splitted[0] != read_completed_ones: 
      1==1 

我有一个最后一个if语句的问题,该语句中的read_completed_ones是一个列表,当然还因为string!=一个列表它总是正确的,因为我试图将不在read_completed_ones中的拆分放入字典中。将列表更改为字符串进行比较

P.S 1 == 1只是一个声明,因此我在尝试 感谢您的帮助时没有收到任何错误。

+2

使用'pass',而不是'1 == 1' –

+1

我想你想'read_completed_set =设置(read_completed_ones )',然后用'read_completed_set'中的splitted [0]测试成员资格。这是[集合上的文档](http://docs.python.org/2/library/sets.html) – Cuadue

+0

@Cuadue它给出相同的输出,它打印所有拆分[0],即使它在read_completed_ones中 – Ankosh

回答

0

您可以使用加入从字符串列表中进行字符串,像这样:

...splitted[0] != ''.join(read_completed_ones): 
+0

它给出了相同的结果,因为我认为连接使它成为整个字符串 – Ankosh

相关问题