不知道该怎么做。我有一个字符串,我需要它的第一部分。当print(result.text)运行时,它打印" @PERSONSTWITTER他们的消息"我需要删除第一部分" @ PERSONSTWITTER"。
起初我把它从@中移除了。我遇到了一个问题,首先是用户名可以是任意数量的字母。 (@ PERSONSTWITTER2,@ PERSONSTWITTER12等)他们没有相同数量的角色。现在我不确定该怎么做。任何帮助都会很棒!
所以我需要的是隔离他们的信息"而不是用户名。
for s in twt:
sn = s.user.screen_name
m = "@%s MESSAGE" % (sn)
s = api.update_status(m, s.id)
#time.sleep(5)
for result in twt:
print(result.text)
答案 0 :(得分:1)
您可以使用string.startswith
过滤以@
开头的字词:
>>> s = "@PERSONSTWITTER their message. @ANOTHERWRITER their another message."
>>> ' '.join(word for word in s.split() if not word.startswith('@'))
'their message. their another message.'
我首先将您的句子分成单词,过滤不以@
开头的单词,然后重新加入。
答案 1 :(得分:1)
您可以使用正则表达式:
import re
s = "@PERSONSTWITTER their message"
new_s = re.sub('^\S+', '', s)[1:]
输出:
'their message'
答案 2 :(得分:0)
使用.split()
方法将string
转换为list
strings
spaces
形成的.join
分割原文(默认情况下)1
。
然后使用s = "@PERSONSTWITTER their message"
' '.join(s.split()[1:])
# --> 'their message'
方法将列表中病房的索引index
中的所有元素连接在一起,再用空格分隔。
space
另一种方法是仅从s = "@PERSONSTWITTER their message"
s[s.index(' ')+1:]
# --> 'their message'
开始1
,然后从病房开始切片:
strings
请注意,我们必须将OnClick
添加到索引中,因为click
从零开始
答案 3 :(得分:0)
s = "@PERSONSTWITTER their message"
split_s = s.split(' ')
message = ' '.join( split_s[1:] )