2016-02-12 77 views
-5

当我打电话从主子程序数组括号打印出如何避免打印[]中的数组括号?蟒蛇

def hobby(hobbies, correct_hobbies, incorrect_hobbies): 

    number = 0 

    underscore = ["_"]*len(hobbies) 

    while number <len(hobbies): 

     if hobbies[count] in correct_hobbies: 
      underscore[count]=hobbies[count] 
+4

我没有看到打印声明。你能否在一个问题上付出很少的努力? – timgeb

回答

1

如果你有一个字符串列表,你可以使用join它们打印为一个字符串,而不是一个列表

>>> l = ['t','h','i','s'] 
>>> l 
['t', 'h', 'i', 's'] 
>>> ''.join(l) 
'this' 

如果你想空间(或任何其他定界符)之前join

>>> l = ['some', 'list', 'of', 'words'] 
>>> l 
['some', 'list', 'of', 'words'] 
>>> ' '.join(l) 
'some list of words' 
+0

怎么下划线= [“_”] * len(hobbies)由它自己打印出来?没有说打印它? –

+0

@AdrianBochnacki如果您在IDLE或其他交互式编辑器中,则返回语句直接打印到控制台。如果这是在一个脚本中,你将不得不说为了发生这种情况。 – CoryKramer

+0

没关系得到它谢谢 –

-2

不要再增加,在报价o打印list,但没有括号,可以使用str.strip()

>>> mylist = [4, 5, 6, 7] 
>>> print(str(mylist).strip("[]")) 
4, 5, 6, 7 

如果您也想删除逗号,你可以使用str.join()代替:

>>> mylist = ['4', '5', '6', '7'] 
>>> print("".join(mylist)) 
4567 

这会在你的情况下工作,但让人们注意的是,如果有在mylist任何东西,这是不是一个字符串,会有一个TypeError。