5 सवाल: i + = 1 लूप के लिए सिंटैक्स त्रुटि उत्पन्न करता है

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

उदाहरण के लिए।

name = 'python'
length = len(name)
i = 0
for n in range(-1,(-length-1), -1):
    print( name[i], '\t', name[n])
    i+ = 1

मैं i + = 1 को निकालता हूं जो अर्थ संबंधी त्रुटि उत्पन्न करता है। मैं एक शुरुआत कर रहा हूं और अजगर वेबसाइट द्वारा प्रदान किए गए अजगर ट्यूटोरियल का उपयोग कर रहा हूं। मूल रूप से मैं आगे और पिछड़े अनुक्रमण का अभ्यास कर रहा हूं।

name = 'python'
length = len(name)
i = 0
for n in range(-1,(-length-1), -1):
    print( name[i], '\t', name[n])
    i+ = 1

मैं उम्मीद कर रहा हूं कि आगे नाम का आउटपुट फिर पीछे की ओर चला जाए

    
- 1
  1. लूप अप्रासंगिक है। यह कार्यक्रम विफल हो जाता है: i = 0; i+ = 1। तो क्या 0600350991100100101035062 को वैध रूप से परिवर्तित किया जाना चाहिए "एक चर का मूल्य बढ़ाना"? - stackoverflow.com/a/1485854/2864740
    2019-05-08 16: 08: 34Z
  2. इसके बजाय i+ = 1 करें
    2019-05-08 16: 09: 36Z
  3. डेविस, अगली बार अपनी समस्याओं को अलग करने का प्रयास करें। बस अजगर इंटरप्रेटर पर i += 1 टाइप करना आपको वही त्रुटि देता है, और आप पहले से ही जानते थे कि समस्या कुछ हद तक संबंधित थी। वास्तविक समस्या कहां है यह पता लगाने के लिए यह एक अच्छी तकनीक है।
    2019-05-08 16: 38: 38Z
  4. 0600350991100100101035062 के अलावा, आप लूप के लिए बहुत कुछ सरल कर सकते हैं @DavisPaggett
    2019-05-09 14: 42: 43Z
    5 उत्तर                              5                         

    आपकी त्रुटि आपके 0600350991100101035062 कथन में है, जो i+ = 1

    होनी चाहिए

    इसे आज़माएँ:

    i += 1     
    2
    2019-05-08 16: 10: 33Z

    + और = के बीच कोई रिक्त स्थान नहीं होना चाहिए।

    i+ = 1     
    2
    2019-05-08 16: 10: 59Z

    आप अपने कोड के माध्यम से मनमाने ढंग से रिक्त स्थान नहीं फैला सकते हैं। पायथन को पहचानने वाले कुछ टोकन को ठीक उसी तरह लिखा जाना है जैसे वे प्रलेखित हैं। यह उदाहरण के लिए सही है। i += 1 जिसे आप

    name = 'python'
    length = len(name)
    i = 0
    for n in range(-1,(-length-1), -1):
        print( name[i], '\t', name[n])
        i += 1
    
    पर नहीं लिख सकते हैं, और यह भी सच है कि आप यहाँ जो प्रयोग कर रहे हैं उसे ऑपरेटर कहा जाता है। इसे
    i += 1
    
    लिखा जाना चाहिए, उसी तरह class में भी जगह नहीं हो सकती।     
    0
    2019-05-08 16: 11: 13Z

    जैसा कि अन्य टिप्पणीकारों ने पहले ही बताया है, 0600350991100101035062 का उपयोग cl a ss के रूप में किया जाता है, न कि += के रूप में, जो आपके पास == में होता है। सादगी के लिए, और चूंकि आप कहते हैं कि आप एक शुरुआत हैं, इसलिए मैं इसके बजाय += का उपयोग करने का सुझाव दे सकता हूं।

    इसके अलावा, आप स्ट्रिंग के अंत से सूचकांक की गणना करने के लिए 0600350991100100101035062 विशेषता का उपयोग करके अपने लूप के लिए भी सरल बना सकते हैं। a += b a+ = b

    करने के समान है i+ = 1

    आउटपुट

    होगा i = i+1     
    0
    2019-05-08 16: 52: 23Z

    + और =

    के बीच के स्थान से बचें

    i + = 1 का प्रयोग करें बजाय i + = 1

    यहां देखें: पायथन में वेतन वृद्धि और डीरेक्टर ऑपरेटरों का व्यवहार

        
    - 1
    2019-05-08 16: 31: 11Z
    1. कृपया अपना उत्तर स्पष्ट करें यदि आप कर सकते हैं। मैं length
      का उपयोग करते हुए ओपी नहीं देखता हूं
      2019-05-08 16: 27: 48Z
      range(length)
स्रोत रखा गया यहाँ