मैं एक वर्ग के निर्माण के साथ कुछ मुद्दों के लिए आपकी मदद मांगता हूं जो एन-आयामी वैक्टर (योग, डॉट उत्पाद, क्रॉस उत्पाद इत्यादि) के लिए सामान्य संचालन की गणना करता है।

मुझे शुरुआत में ही समस्या है:

class  nVector:
    ''' Our goal is o create a class to work with nD vectors'''
    def __init__(self,*args):
        '''Construction of the nD vector with n arguments'''
        r=[]
        '''empty list where the coordinates will be gathered'''
        for i,xi in enumerate(args): 
            self.i=xi
            r=r+[xi]
        self.r=r


        return 

मैंने इसे बाद में स्ट्रिंग करने के लिए r सूची का उपयोग किया और प्रिंट करने और कुछ देखने में सक्षम होने के लिए। मुख्य समस्या यह है कि अगर मैं टर्मिनल में self.1 लिखता हूं तो मुझे पहला समन्वय प्राप्त करने की उम्मीद है, self.2 दूसरा और इसी तरह, लेकिन यह त्रुटि लौटा रहा है:


n=nVector(1,1,1,1)

n.1
  File "<ipython-input-9-a30c5b21dbaf>", line 1
    n.1
      ^
SyntaxError: invalid syntax

किसी को पता है कि gthis को कैसे ठीक किया जा सकता है?

एक और समस्या यह है कि वेक्टर योग करने के लिए मेरे पास कोई सुराग नहीं है।

आप सभी को धन्यवाद

0
David Hervés Pardavila 12 पद 2019, 03:18

1 उत्तर

सबसे बढ़िया उत्तर

तत्काल समस्या यह है कि "अगर मैं टर्मिनल में स्वयं लिखता हूं तो मुझे पहला समन्वय प्राप्त होने की उम्मीद है"। आपको यह विचार कहां से आया कि यह काम करेगा; यह कानूनी पायथन सिंटैक्स नहीं है। यहां डॉट ऑपरेटर class.attribute पहुंच के लिए है, और एक पूर्णांक कानूनी विशेषता नाम नहीं है।

मैं सोचता हूं आप जो चाहते हैं वह है n.r[0], n.r[1], आदि।

आपने जो लिखा है उसे कुछ सरल print कमांड के साथ ट्रेस करें:

class  nVector:
    ''' Our goal is o create a class to work with nD vectors'''
    def __init__(self,*args):
        '''Construction of the nD vector with n arguments'''
        r=[]
        '''empty list where the coordinates will be gathered'''
        for i,xi in enumerate(args): 
            self.i=xi
            print("attribute i", self.i)
            r=r+[xi]
        self.r=r
        print("attribute r", self.r)


        return 

n=nVector(1,2,3,4)

print(n.i)

आउटपुट:

attribute i 1
attribute i 2
attribute i 3
attribute i 4
attribute r [1, 2, 3, 4]
4

क्या यह स्पष्ट करने में मदद करता है कि वर्ग विशेषताएँ कैसे काम करती हैं?

1
Prune 12 पद 2019, 03:31