-1

当我运行我的代码时,我得到了这个

类型错误:rstrip arg 必须为 None 或 str

这是我的代码:

words = input("Words: ")
wordcount = len(words)
tweet = str(words)
x = 0
while wordcount <= 140:
    phrase = input("Words: ")
    tweet = tweet+' '+str(phrase)
    wordcount = len(tweet)
    print(wordcount)
    print(tweet)
    x = len(phrase)+1
    if wordcount >= 140:
        break

tweet = tweet.rstrip(x+1)
wordcount = len(tweet)
print(wordcount)
print(tweet)

注意:这是在 python 3

有什么帮助吗?

4

2 回答 2

3

你正在传递一个integerto rstrip,你必须传递一个None或一些字符,如果这个字符是你想从字符串的右侧删除的。

例子:

'   aaab      '.rstrip()
#'   aaab'

'   aaabcccccc'.rstrip('c')
#'   aaab'
于 2013-08-29T21:52:40.367 回答
1

从您的评论中,听起来您想“x+1去掉推文的长度”。为此,您可以使用字符串切片。My_String[a:b]将为您提供一个新字符串,其中包含从字符编号a到字符编号的字符b-1。如果您将任一侧留空,它将转到字符串的那一端(即,My_String[a:]将从a字符串的末尾开始)。要从字符串的末尾开始,请使用负数。您的代码应如下所示:

tweet = tweet[:-x]
于 2013-08-29T21:59:39.890 回答