1 सवाल: स्टॉपवॉच के अन्याय, केंद्र और अन्यायपूर्ण उत्पादन की कोशिश करना

पर बनाया गया सवाल Wed, May 8, 2019 12:00 AM

मेरे पास एक स्टॉपवॉच कार्यक्रम है जो पूरी तरह कार्यात्मक है। मैं जो करने की कोशिश कर रहा हूं वह आउटपुट को संरेखित करने के लिए है।

यह संपादित करने का प्रयास करने से पहले कोड का एक भाग था:

 lapTime = round(time.time() - lastTime, 2)
 totalTime = round(time.time() - startTime, 2)
 print ('Lap #%s: %s (%s)' % (lapNum, totalTime, lapTime), end='')

यह आउटपुट को संरेखित करने के प्रयासों में से एक था:

 print ('Lap ', lapNum.ljust(10, ' ')), ':',totalTime.center(20, ' '), 
 lapTime.rjust(30, ' '))

मुझे त्रुटि मिल रही है:

 File "D:/stopwatch2.py", line 19, in main
     print ('Lap ' + str(lapNum.ljust(10, ' ')), ':',totalTime.center(40, 
 ' '), lapTime.rjust(50, ' '))
 AttributeError: 'int' object has no attribute 'ljust'
    
- 1
  1. त्रुटि बहुत पठनीय है। और आपने जो चलाया है उससे अलग कोड पोस्ट किया है।
    2019-05-08 16: 16: 50Z
    1 उत्तर                              1                         

    ljust और center स्ट्रिंग विधियाँ हैं। आपको उन विधियों को कॉल करने से पहले मान को स्ट्रिंग्स में बदलना होगा:

    print ('Lap ', str(lapNum).ljust(10, ' '), ':', str(totalTime).center(20, ' '))
    

    आप str.format और प्रारूप विकल्पों का भी उपयोग कर सकते हैं: /p>

    print ('Lap {:<10}: {:=20}'.format(lapNum, totalTime))
    # output: Lap 1         :           1557332386
    

    str.format के साथ एक स्ट्रिंग में रूपांतरण निहित है।

        
    1
    2019-05-08 16: 15: 11Z
    1. ओह यार बहुत बहुत धन्यवाद! मैंने इसे एक स्ट्रिंग में बदलने की कोशिश की, लेकिन मेरा मुद्दा सचमुच सिर्फ एक धन्यवाद था!
      2019-05-08 16: 33: 32Z
स्रोत रखा गया यहाँ