/ / एक पूर्णांक से पूर्णांक निकालना - नकारात्मक पूर्णांक - अजगर, रेगेक्स, सूची, पूर्णांक सहित

एक स्ट्रिंग से पूर्णांक निकालना - नकारात्मक पूर्णांक - पायथन, regex, सूची, पूर्णांक सहित

मैं इस प्रकार की संरचना के यादृच्छिक रूप से उत्पन्न तारों में पाए गए पूर्णांक निकालने की कोशिश कर रहा हूं;

string1 = "3x-2-44"

मैंने सफलतापूर्वक एक स्ट्रिंग में पाए गए पूर्णांक के साथ एक सूची भरने में कामयाब रहा है;

L1 = (re.findall(r"d+", string1))

"L1" सभी पूर्णांकों की एक उपयोगी सूची रखेगा, लेकिन यह दर्शाता है कि संख्या नकारात्मक है या नहीं, उदाहरण के लिए "string1" L1 को धारण करेगा

[3,2,44]

बजाय कुछ की तरह:

[3,-2,-44]

यह निर्धारित करना भी कैसे संभव होगा कि पूर्णांक के पिछले चरित्र को फिर से निर्धारित किया जाए कि वह सकारात्मक है या नकारात्मक?

उत्तर:

जवाब के लिए 2 № 1

तुंहारे regex इस तरह होना चाहिए:

>>> import re
>>> string1 = "3x-2-44"

#                v for matching zero or one occurrence of `-` in string
>>> re.findall("-?d+", string1)
["3", "-2", "-44"]

निकाले गए संख्या तारों को परिवर्तित करने के लिए int, आप उपयोग कर सकते है map जैसा:

>>> list(map(int, re.findall("-?d+", string1)))
[3, -2, -44]