Python 如何将列表转换为字符串?

Python 如何将列表转换为字符串?,python,string,list,python-3.5,Python,String,List,Python 3.5,我所做的: with open('TheData.txt', 'r') as data_file: money = data_file.read() wednesday_tickets = ['W1', 'W2', 'W3'] thursday_tickets = ['T1', 'T2', 'T3'] friday_tickets = ['F1', 'F2', 'F3'] countW = money.count (we

我所做的:

with open('TheData.txt', 'r') as data_file:

        money = data_file.read()
        wednesday_tickets = ['W1', 'W2', 'W3']
        thursday_tickets = ['T1', 'T2', 'T3']
        friday_tickets = ['F1', 'F2', 'F3']

    countW = money.count (wednesday_tickets)
    countT = money.count (thursday_tickets)
    countF = money.count (friday_tickets)

    wednesday = countW * 5
    thursday = countT * 5
    friday = countF * 10

    money_raised = wednesday + thursday + friday

    print("The total money raised for charity is £ " + money_raised)
问题: 当我运行程序时,我收到“TypeError:无法将“list”对象隐式转换为str”返回。我已经尝试了我所知道的一切,但我不知道我应该做什么来克服这一点。
我使用这段代码的目的是通过计算T1、T2、T3、W1、W2的数量来了解筹集了多少资金。。文件中有,并将其与价格相乘。

问题在于以开头的3行

countW = money.count (wednesday_tickets)
count
方法需要单个字符串,而不是字符串列表。您似乎想要总数,每种票证类型有一个计数。你可以用

countW = sum(money.count(ticket) for ticket in wednesday_tickets)
接下来的两行也是如此。这并不是最有效的方法,因为它涉及总共9次数据传递,尽管如果这真的是关于高中话剧之类的门票的话,如果效率是一个很大的问题,我会感到惊讶

另外,由于不能直接将字符串和数字组合在一起,所以上一个print语句将无法工作。相反,使用

print("The total money raised for charity is £", money_raised)

并让打印函数为您将数字转换为字符串。

寻求调试帮助的问题(“为什么此代码不起作用?”)的可能重复必须包括所需的行为、特定问题或错误以及在问题本身中重现该问题所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:。请包括示例输入、预期输出以及任何错误或回溯的全文。OP也可能试图获取每天的长度,这将在下面介绍