我有这个脚本:
test = [
'listen<SP>'+tags+'<SP>online<SP>for<SP>free,',
'<SP>listen<SP>'+tags+'<SP>online,',
'<SP>listen<SP>'+tags+'<SP>song,',
'<SP>listen<SP>'+tags+'<SP>putlocker,',
'<SP>download<SP>'+tags+'<SP>song,',
'listen<SP>'+tags+'<SP>free<SP>streaming,',
'<SP>listen<SP>'+tags+'<SP>song<SP>free,',
'<SP>listen<SP>'+tags+'<SP>online<SP>song,',
'<SP>download<SP>'+tags+'<SP>full<SP>song,',
'listen<SP>'+tags+'<SP>online<SP>free,',
'<SP>download<SP>'+tags+'<SP>2013<SP>song,',
'<SP>listen<SP>online<SP>'+tags+'<SP>for<SP>free,',
'<SP>listen<SP>'+tags+'<SP>free<SP>full<SP>song,',
'listen<SP>'+tags+'<SP>online<SP>2013,',
'<SP>where<SP>to<SP>listen<SP>'+tags+',',
'<SP>'+tags+'<SP>full<SP>song<SP>online,',
''+tags+'<SP>online<SP>free,',
'<SP>listen<SP>'+tags+'<SP>free<SP>2013,',
''+tags+'<SP>full<SP>song<SP>online,',
'<SP>free<SP>streaming<SP>'+tags+',',
'<SP>listen<SP>'+tags+'<SP>2013,',
'<SP>listen<SP>'+tags+'<SP>free,',
'<SP>hear<SP>'+tags+'<SP>online,',
'<SP>'+tags+'<SP>online,',
'hear<SP>'+tags+',',
'<SP>listen<SP>'+tags+',',
'<SP>'+tags+'<SP>free,',
'<SP>free<SP>'+tags+',',
'<SP>'+tags+'<SP>online,',
'<SP>online<SP>'+tags+',',
'<SP>'+tags+',']
random.shuffle(test)
scris = [x for x in test if len(x) <= 30]
scris_fisiere = scris[0:7]
row_test.append(allitems)
fisier_text_tags.writerow(row_test)
正如你所看到的那样,它随机化并且只将具有30个字符长度的结果写入csv文件,我想要它做的是写一个字符串“what”如果字符串超过30个字符。现在它只写出长度不超过30个字符的结果,如果结果是3个字符串,它只会从0到2写入,如[0:2],依此类推。
感谢您的时间。
答案 0 :(得分:1)
替换此行:
scris = [x for x in test if len(x) <= 30]
与
scris = [len(x) <= 30 and x or 'whatever' for x in test]