Python Reddit提交文本切片

Python Reddit提交文本切片,python,string,slice,reddit,praw,Python,String,Slice,Reddit,Praw,我正在使用Reddit的PRAW收集意见书。我希望能够将提交的文本切片,并将其保存到一个变量中,与硬编码的数字进行比较,以删除标题中数字大于该数字的所有提交帖子 import praw reddit = praw.Reddit(client_id = 'REDACTED', client_secret = 'REDACTED', username = 'REDACTED', password = 'REDACTED'

我正在使用Reddit的PRAW收集意见书。我希望能够将提交的文本切片,并将其保存到一个变量中,与硬编码的数字进行比较,以删除标题中数字大于该数字的所有提交帖子

import praw
reddit = praw.Reddit(client_id = 'REDACTED',
                    client_secret = 'REDACTED',
                    username = 'REDACTED', password = 'REDACTED',
                    user_agent = 'REDACTED')
subreddit = reddit.subreddit('NumbersReddit')
new_numpost = subreddit.new(limit=10)

for submission in new_numpost :
    if not submission.stickied:
        print(50*'-')
        print('User: {} '.format(submission.author))
        print('Title: {}'.format(submission.title))
        print('URL: {}'.format(submission.url))
使用上面的代码作为起点:删除粘贴的投稿后,我想获得文章标题的前两个字符(通常是2个数字,即24),并将其与硬编码的数字(如18)进行比较,然后删除所有以大于18的数字开头的文章

输出应为以下内容:


用户:示例1

标题:18年了,我以前从未意识到这一点

网址:


用户:示例2

标题:我尝试了18次,但都是值得的

网址:


用户:示例3

标题:18人说节食对他们来说已经足够了

网址:


修理 更改为:

for submission in new_numpost :
    if not submission.stickied:
        print(50*'-')
        print('User: {} '.format(submission.author))
        print('Title: {}'.format(submission.title))
        print('URL: {}'.format(submission.url))
为此:

for submission in new_numpost :
    if not submission.stickied:
        title_number = int(submission.title[:2])
        if title_number < 25:
            print(50*'-')
            print('User: {} '.format(submission.author))
            print('Title: {}'.format(submission.title))
            print('URL: {}'.format(submission.url))
在新邮件中提交:
如果未提交。不粘贴:
title_number=int(提交.title[:2])
如果标题编号<25:
打印(50*'-')
打印('User:{}'。格式(submission.author))
打印('Title:{}'。格式(submission.Title))
打印('URL:{}'。格式(submission.URL))

要获取任何字符串的前n个字符,请执行以下操作:

(假设您的标题是“18:你好!”)

结果:

18
因此,您可以在标题行上执行以下操作:
print('Title:{}.format(submission.Title[:2]))

假设里面有一根绳子

有了它,就可以将其转换为这样的整数(假设我们还没有对其进行切片):

然后你可以用int做任何你想要的比较

更新以进一步澄清答案:

您的完整标题似乎来自
提交。title
,因此您可以在此基础上创建两个变量: 一个变量名为
title\u number
,另一个变量名为
title
,其中
title\u number=int(submission.title[:2])
title=submission.title
您要做的就是比较
title\u编号
,如果它大于您得到的任何数字,则在for循环中打印
title
,否则忽略它

例如(假设submission.title为“18年,我以前从未意识到这点”)

应导致:

18 Years and I haven't realised this before

要打印出任何字符串的前n个字符,请执行以下操作:

(假设您的标题是“18:你好!”)

结果:

18
因此,您可以在标题行上执行以下操作:
print('Title:{}.format(submission.Title[:2]))

假设里面有一根绳子

有了它,就可以将其转换为这样的整数(假设我们还没有对其进行切片):

然后你可以用int做任何你想要的比较

更新以进一步澄清答案:

您的完整标题似乎来自
提交。title
,因此您可以在此基础上创建两个变量: 一个变量名为
title\u number
,另一个变量名为
title
,其中
title\u number=int(submission.title[:2])
title=submission.title
您要做的就是比较
title\u编号
,如果它大于您得到的任何数字,则在for循环中打印
title
,否则忽略它

例如(假设submission.title为“18年,我以前从未意识到这点”)

应导致:

18 Years and I haven't realised this before

打印出来的

所以你只是想找到标题的前两个字符?是的。我已经查过了线切割,但无法用我所拥有的工作。如果我能切掉字符串并保存它,然后比较它,那就好了。所以你只是想找到标题的前两个字符?是的。我已经查过了线切割,但无法用我所拥有的工作。如果我可以分割字符串并保存它,然后比较它,那就好了。再加上条约所说的,如果当前不是字符串,可以使用str()强制转换数据。只需从submission.title获取标题即可。所以
title=submission.title
然后按您的意愿拆分。我仍然需要保留提交内容的完整标题,但过滤掉所有我不想要的标题。我将修改我的帖子,向您展示我对标题的意思。哦,然后从一个拆分名称中获取标题编号变量
title\u number=int(submission.title[:2])
,然后您可以命名另一个变量
title=submission.title
现在您既有标题编号,又有标题本身。啊,太棒了!我能看到那里的逻辑,而且它是有效的,真不敢相信我没有看到它。非常感谢您的帮助。除了Treaty所说的,如果数据当前不是字符串,您可以使用str()强制转换数据。只需从submission.title获取标题即可。所以
title=submission.title
然后按您的意愿拆分。我仍然需要保留提交内容的完整标题,但过滤掉所有我不想要的标题。我将修改我的帖子,向您展示我对标题的意思。哦,然后从一个拆分名称中获取标题编号变量
title\u number=int(submission.title[:2])
,然后您可以命名另一个变量
title=submission.title
现在您既有标题编号,又有标题本身。啊,太棒了!我能看到那里的逻辑,而且它是有效的,真不敢相信我没有看到它。非常感谢你的帮助。
18 Years and I haven't realised this before