• 1 Post
  • 73 Comments
Joined 2 years ago
cake
Cake day: July 7th, 2023

help-circle
  • It’s not helping if some bitch on her menstrual cycle comes and spams her keyboard without any valid points

    You’ve already previously been given warning for breaching our Code of Conduct section 3.5 (Hate Speech: Do not make remarks directed at sex, gender…). This is your third strike within 2 months and your account is now at risk of receiving a permanent ban if further breaches are made within 365 days.

    Since this is strike 3, your account will be given a 14 days site-wide temporary ban.

    - The programming.dev community team
















  • Personally I would recommend to use regex instead for parsing, which would also allow you to more easily test your expressions. You could then get the list as

    import re
    result = re.findall(r'[\w_]+|\S',  yourstring)  # This will preserve ULLONG_MAX as a single word if that's what you want
    

    As for what’s wrong with your expressions:

    First expression: Once you hit (, OneOrMore(Char(printables)) will take over and continue matching every printable char. Instead you should use OR (|) with the alphanumerical first for priority OneOrMore(word | Char(printables))

    Second expression. You’re running into the same issue with your use of +. Once string.punctuation takes over, it will continue matching until it encounters a char that is not a punctuation and then stop the matching. Instead you can write:

    parser = OneOrMore(Word(alphanums) | Word(string.punctuation))
    result = parser.parseString(yourstring)
    

    Do note that underscore is considered a punctutation so ULLONG_MAX will be split, not sure if that’s what you want or not.


  • I don’t have any experience with pipx and personally prefer to just skip the .toml and place the whole pyprojectsetup in setup.py.

    With that method, I would write inside setup()

    packages=find_packages()  # Include every python packages
    package_data={  # Specify additional data files
        'yourpackagename': [
            'config/*'
            etc...
        ]
    }
    

    This would however require you to have a package folder which all your package files/folders are inside, meaning the top level repo folder should not have any files or other folders that you want to distribute. Your MANIFEST.in looks fine.






OSZAR »