سؤال

عند تشغيل ملف .ملف exe فإنه يطبع الأشياء على الشاشة.أنا لا أعرف خط محدد من حيث أريد طباعتها ولكن هل هناك طريقة يمكنني الحصول على الثعبان طباعة السطر التالي بعد أن يقول "ملخص" ?وأنا أعلم أن هناك عندما يطبع أنا في حاجة إلى معلومات بعد.وذلك بفضل!

هل كانت مفيدة؟

المحلول

حل ثعبان بسيط حقا:

def getSummary(s):
    return s[s.find('\nSummary'):]

هذا إرجاع كل شيء بعد المثيل الأول من ملخص
إذا كنت بحاجة إلى أن تكون أكثر تحديدا، فسوف أوصى التعبيرات العادية.

نصائح أخرى

فعلا

program.exe | grep -A 1 Summary 

سوف تفعل وظيفتك.

إذا exe يطبع على الشاشة ثم الأنابيب هذا الإخراج إلى ملف نصي.لقد افترض exe على ويندوز ، ثم من سطر الأوامر:

myapp.exe > output.txt

و معقول قوية كود بايثون سيكون شيئا مثل:

try:
    f = open("output.txt", "r")
    lines = f.readlines()
    # Using enumerate gives a convenient index.
    for i, line in enumerate(lines) :
        if 'Summary' in line :
            print lines[i+1]
            break                # exit early
# Python throws this if 'Summary' was there but nothing is after it.
except IndexError, e :
    print "I didn't find a line after the Summary"
# You could catch other exceptions, as needed.
finally :
    f.close()
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top