Python Forum
Exclude words with specific endings from list
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Exclude words with specific endings from list
#1
Hey, is there a way to exclude words from a list that have specific endings, like every single word that ends with -s or -en? In my script i import some lists from external files to my script and these lists are very long and i can't delete the specific words by myself, because it would take days. So i thought there may be a python-command or something. This is my script:

import random, time, tweepy, ast
 
with open('liste1.txt') as infile:
    list1 = ast.literal_eval(infile.read())

with open('liste1.txt') as infile:
    list1 = ast.literal_eval(infile.read())

with open('liste1.txt') as infile:
    list1 = ast.literal_eval(infile.read())
 
def one():
    return random.choice(list1) + random.choice(list2)
 
def two():
    return random.choice(list2) + random.choice(list3)
 
#I'm working on a Twitter bot, that's just some twitter stuff down here 
consumer_key = 'XXX'
consumer_secret = 'XXX'
access_token = 'XXX'
access_token_secret = 'XXX'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
 
while True:
    postthis = random.choice([one,two])()
    if len(postthis) <= 140:
        api.update_status(status=postthis)
        time.sleep(10)
Thanks :)
Reply
#2
First, why are you reading the file three times? That's just unnecessary.

But sure, you can totally do that. Something as simple as:
list1 = [item for item in list1 if not item.endswith("-s") and not item.endswith("-en")]
Reply
#3
(Apr-05-2018, 07:54 PM)nilamo Wrote:
list1 = [item for item in list1 if not item.endswith("-s") and not item.endswith("-en")]

Okay i just tried it by copying this code in my script right here, but when i run it, it still posts words with these two endings. No error message. What have i done wrong? ...

with open('list2.txt') as infile:
    list2 = ast.literal_eval(infile.read())
    list2 = [item for item in list2 if not item.endswith("-s") and not item.endswith("-en")]
Reply
#4
Do you have some example input/output?
Reply
#5
I replaced the content of my list #2 with the items ["aaa", "bbb", "ccc"] and excluded every word that ends with -b and -c. When i run the module, it still posts and alternates between all three items.

This is the whole script right now.

import random, time, tweepy, ast

with open('list1.txt') as infile:
    list1 = ast.literal_eval(infile.read())

with open('list2.txt') as infile:
    list2 = ast.literal_eval(infile.read())
    list2 = [item for item in list2 if not item.endswith("-b") and not item.endswith("-c")]

with open('list3.txt') as infile:
    list3 = ast.literal_eval(infile.read())

def one():
    return random.choice(list1) + random.choice(list2)

def two():
    return random.choice(list2) + random.choice(list3)

consumer_key = 'XXX'
consumer_secret = 'XXX'
access_token = 'XXX'
access_token_secret = 'XXX'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)

while True:
    postthis = random.choice([one])()
    if len(postthis) <= 140:
        api.update_status(status=postthis)
        time.sleep(10)
Reply
#6
(Apr-05-2018, 08:11 PM)nilamo Wrote: Do you have some example input/output?
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Function to count words in a list up to and including Sam Oldman45 15 6,414 Sep-08-2023, 01:10 PM
Last Post: Pedroski55
  Regex Include and Exclude patterns in Same Expression starzar 2 736 May-23-2023, 09:12 AM
Last Post: Gribouillis
  [SOLVED] [loop] Exclude ranges in… range? Winfried 2 1,367 May-14-2023, 04:29 PM
Last Post: Winfried
  search a list or tuple for a specific type ot class Skaperen 8 1,855 Jul-22-2022, 10:29 PM
Last Post: Skaperen
Question How to gather specific second-level items from a list chatguy 2 1,517 Dec-17-2021, 05:05 PM
Last Post: chatguy
  Generate a string of words for multiple lists of words in txt files in order. AnicraftPlayz 2 2,759 Aug-11-2021, 03:45 PM
Last Post: jamesaarr
  Telegram Users Scrapper - Exclude UserPrivacyRestricted graphite2015 0 2,556 Oct-23-2020, 05:43 AM
Last Post: graphite2015
  Remove specific elements from list with a pattern Xalagy 3 2,623 Oct-11-2020, 07:18 AM
Last Post: Xalagy
  Trying to find first 2 letter word in a list of words Oldman45 7 3,635 Aug-11-2020, 08:59 AM
Last Post: Oldman45
  how to check if string contains ALL words from the list? zarize 6 7,048 Jul-22-2020, 07:04 PM
Last Post: zarize

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020