第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python,打印執(zhí)行了兩次

Python,打印執(zhí)行了兩次

婷婷同學(xué)_ 2023-03-16 09:40:37
我已經(jīng)開始使用 Tariq Rashid 的書來接觸 Python 和神經(jīng)網(wǎng)絡(luò)。按照所有步驟仔細閱讀并嘗試。有一次,我應(yīng)該測試一個方法,看它是否正確執(zhí)行。所以我做了什么,我使用 print 轉(zhuǎn)換了方法(該方法有一個返回值)?,F(xiàn)在我的問題是,它工作正常,但雖然輸出應(yīng)該是單個數(shù)組,但它們是 2 個具有不同值的數(shù)組。當我嘗試調(diào)試文件時,它也通過打印命令進行了 2 次,其中只有 1 次。我唯一的區(qū)別是,我將init用作主要類(來自 java),并且我將神經(jīng)網(wǎng)絡(luò)創(chuàng)建為其中的一個對象。還要提一下,如果我在神經(jīng)網(wǎng)絡(luò)文件中執(zhí)行相同的程序,它工作正常。from src2.neuralNetwork import NeuralNetworknetwork = NeuralNetwork(3, 3, 3, 0.3)print(network.query([1.0, 0.5, -1.5]))這是 __init__.py 文件。import numpyimport scipy.specialclass NeuralNetwork:    def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate):        self.inodes = inputnodes        self.hnodes = hiddennodes        self.onodes = outputnodes        self.lr = learningrate        self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)        self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)        self.activation_function = lambda x: scipy.special.expit(x)        pass    def train(self):        pass    def query(self, inputs_list):        inputs = numpy.array(inputs_list, ndmin=2).T        hidden_inputs = numpy.dot(self.wih, inputs)        hidden_outputs = self.activation_function(hidden_inputs)        final_inputs = numpy.dot(self.who, hidden_outputs)        final_outputs = self.activation_function(final_inputs)        return final_outputs那是神經(jīng)網(wǎng)絡(luò)的文件。感謝您的每一個回答。編輯:根據(jù)要求,輸出。它們不是隨機值的一致原因。這是從 __ init __ 文件打印時的輸出這是從神經(jīng)網(wǎng)絡(luò)文件打印時的輸出
查看完整描述

1 回答

?
狐的傳說

TA貢獻1804條經(jīng)驗 獲得超3個贊

我用了兩個文件來測試這個。這是每個的代碼。測試初始化文件


import numpy

import scipy.special



class NeuralNetwork:


    def __init__(self, inputnodes, hiddennodes, outputnodes, learningrate):

        self.reset(inputnodes, hiddennodes, outputnodes, learningrate)

        self.inodes = inputnodes

        self.hnodes = hiddennodes

        self.onodes = outputnodes


        self.lr = learningrate


        self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)

        self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)


        self.activation_function = lambda x: scipy.special.expit(x)

        

    

        pass

    def reset(self, inputnodes, hiddennodes, outputnodes, learningrate):

        self.inodes = inputnodes

        self.hnodes = hiddennodes

        self.onodes = outputnodes


        self.lr = learningrate


        self.wih = (numpy.random.rand(self.hnodes, self.inodes) - 0.5)

        self.who = (numpy.random.rand(self.onodes, self.hnodes) - 0.5)

    def train(self):

        pass


    def query(self, inputs_list):

        inputs = numpy.array(inputs_list, ndmin=2).T


        hidden_inputs = numpy.dot(self.wih, inputs)

        hidden_outputs = self.activation_function(hidden_inputs)


        final_inputs = numpy.dot(self.who, hidden_outputs)

        final_outputs = self.activation_function(final_inputs)

        return final_outputs



network = NeuralNetwork(3, 3, 3, 0.3)

print(network.query([1.0, 0.5, -1.6]))

并導(dǎo)入class.py


from testinit import NeuralNetwork #only consists of this line

問題似乎是當您在原始文件中定義網(wǎng)絡(luò)并執(zhí)行打印命令,然后將該文件導(dǎo)入新文件“importingclass.py”時,即使沒有代碼,importingclass.py 也會執(zhí)行打印命令在原始的“testinit.py”文件中定義。


您可以使用我提供的文件代碼自行嘗試,如果您使用給定的“testinit.py”,您將看到執(zhí)行“importingclass.py”文件將打印一次而沒有代碼。


在任一文件中只有一個打印命令實例將只產(chǎn)生一個打印輸出,而在兩個文件中都有一個打印命令實例(總共兩個)將產(chǎn)生兩個輸出。這是我得出的結(jié)論。


這是我對 init 文件的輸出(條件是導(dǎo)入類的文件中沒有打印命令)

http://img1.sycdn.imooc.com//641273cc0001005b17340114.jpg

因此,解決方案是不實例化一個對象并將其打印在您打算導(dǎo)入的 init 文件中,因為該對象將在導(dǎo)入中創(chuàng)建并打印一次,并使用導(dǎo)入從文件中打印一次(我相信 Python 貫穿于導(dǎo)入文件的行一次)。



查看完整回答
反對 回復(fù) 2023-03-16
  • 1 回答
  • 0 關(guān)注
  • 162 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號