沒搞清楚你想做什么 傳參數(shù)和dll有什么關(guān)系
創(chuàng)新互聯(lián)是一家專業(yè)提供吳興企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、小程序制作等業(yè)務(wù)。10年已為吳興眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。
python是支持?jǐn)U展的 而且豐富的擴(kuò)展正是python的強(qiáng)大之處
擴(kuò)展可以用c/c++寫 編譯成動(dòng)態(tài)庫(kù)如so或dll 然后python腳本可以動(dòng)態(tài)載入
1.水果數(shù)據(jù)處理:對(duì)水果(蘋果,香蕉)數(shù)據(jù)集進(jìn)行處理轉(zhuǎn)化為標(biāo)簽和圖像,并轉(zhuǎn)化為one-hot碼。
2.卷積模型搭建:采用keras搭建模型,卷積層、池化層、Dropout層、全連接層、輸出層
3.模型訓(xùn)練把數(shù)據(jù)集在建立的模型上進(jìn)行訓(xùn)練,并把最好的模型保存到h5文件中,便于直接對(duì)模型進(jìn)行測(cè)試。
4.模型測(cè)試:打開攝像頭,使用通用物體進(jìn)行測(cè)試。測(cè)試結(jié)果將錄制成視頻展示。
Python解釋器內(nèi)置了許多函數(shù),這意味著我們無需定義,始終可以它們。接下來和大家一起討論一個(gè)常用的內(nèi)建函數(shù)-input()和isinstance()。
input()
input()函數(shù)讀取用戶輸入,并轉(zhuǎn)換成字符串:
a?=?input()??#?將input()返回的值賦值給a
Python
a????????????#?查看a的值(為字符串'Python')
'Python'
input()函數(shù)可以提供一個(gè)參數(shù),用來提示用戶:
b?=?input('請(qǐng)輸入你最喜歡的水果:??')???#?給用戶必要的提示
請(qǐng)輸入你最喜歡的水果:??香蕉
b
'香蕉'
需要注意的是,input()函數(shù)返回的值總是字符串,當(dāng)用戶輸入的是數(shù)字也是這樣,所以當(dāng)使用它時(shí)一定要注意:
num?=?input('請(qǐng)輸入一個(gè)數(shù)字:?')
請(qǐng)輸入一個(gè)數(shù)字:?10
num?+?9????????????????????????????#?試圖把num和數(shù)字相加
Traceback?(most?recent?call?last):
File?"",?line?1,?in
TypeError:?must?be?str,?not?int
num
'10'
type(num)???????????????????????????#?查看num的數(shù)字類型
class?'str'
isinstance()
isinstance()函數(shù)用于檢查對(duì)象是否為指定類(或者說數(shù)據(jù)類型)的實(shí)例。isintance()的第一個(gè)參數(shù)為一個(gè)對(duì)象,第二個(gè)參數(shù)為要檢查的數(shù)據(jù)類型。
舉個(gè)例子,比如有有一個(gè)變量,你想檢查它是否為數(shù)字類型,可以使用isinstance()函數(shù):
score?=?90
result?=?isinstance(score,?int)
if?result:
...?????print('score為int數(shù)據(jù)類型')
...?else:
...?????print('score不為int數(shù)據(jù)類型')
...
score為int數(shù)據(jù)類型
除了能檢查是否為int類型外,isintance()還能檢查其他數(shù)據(jù)類型(當(dāng)然了),下面是一個(gè)綜合示例:
pi?=?3.14
name?=?'Wang'
complex_num?=?1?+?2j
isinstance(pi,?float)??????????????#?3.14為浮點(diǎn)數(shù)類型
True
isinstance(name,?str)??????????????#?'Wang'為字符串類型
True
isinstance(complex_num,?complex)???#??1?+?2j為復(fù)數(shù)
True
isinstance()還可以驗(yàn)證某個(gè)對(duì)象是否為自定義的類型:
class?Developer:?????????????????????????????#?定義一個(gè)叫做Developer的類
...
...?????def?__init__(self,?name):????????????????#?__init__方法中,需要輸入名字
...?????????self.name?=?name
...?????def?display(self):???????????????????????#?定義了display()方法
...?????????print("Developer:",?self.name,?"-")
...
class?PythonDeveloper(Developer):????????????#?PythonDeveloper類,繼承了Developer類
...
...?????def?__init__(self,?name,?language):
...?????????self.name?=?name
...?????????self.language?=?language
...
...?????def?display(self):????????????????????????#?覆蓋了父類的display方法
...?????????print("Python?Developer:",?self.name,?"language:",?self.language,?"-")
...
dev?=?Developer('Zhang')?????????????????????#?創(chuàng)建一個(gè)Developer對(duì)象
dev.display()????????????????????????????????#?調(diào)用display()方法,以查看該對(duì)象
Developer:?Zhang?-
isinstance(dev,?Developer)???????????????????#?判斷dev是否為Developer類,答案是肯定的
True
isinstance(dev,?PythonDeveloper)?????????????#?判斷dev是否為PythonDeveloper類,當(dāng)然不是
False
python_dev?=?PythonDeveloper('Liu',?'Python')??#?創(chuàng)建一個(gè)PythonDeveloper對(duì)象,注意PythonDeveloper是Developer的子類
python_dev.display()??????????????????????????#?調(diào)用display方法
Python?Developer:?Liu?language:?Python?-
isinstance(python_dev,?Developer)?????????????#?判斷python_dev是否為Developer類,答案是肯定的
True
isinstance(python_dev,?PythonDeveloper)??????#?判斷python是否為PythonDeveloper類,答案也是肯定的
True
關(guān)于Python的基礎(chǔ)問題可以看下這個(gè)網(wǎng)頁(yè)的視頻教程,網(wǎng)頁(yè)鏈接,希望我的回答能幫到你。
Python就是一種和計(jì)算機(jī)交流的語(yǔ)言,這種語(yǔ)言單詞(關(guān)鍵字)不多,規(guī)則也少。下面所有的內(nèi)容都基于python。
1、判斷
當(dāng)你命令計(jì)算機(jī)做一件事情的時(shí)候,這件事情可能分一些情況進(jìn)行處理。
判斷通常涉及到的關(guān)鍵字有:if , else, elseif, and, or,, ,=,=,=,==
比如,你讓計(jì)算機(jī)買西瓜,希望買到打折的西瓜,不打折的話你就不吃了。
if 水果店打折:
買西瓜
else:
不買了
通過這個(gè)命令,計(jì)算機(jī)變得更智能了一些,他可以根據(jù)情況執(zhí)行你的命令。
水果店不打折你就吃不到西瓜,你不開心。那么,我們讓計(jì)算機(jī)更智能一些。假如西瓜打折,就買西瓜;不打折的話讓計(jì)算機(jī)跟老板講價(jià),老板同意打折,就買西瓜;不同意,不吃了;
if 水果店打折:
買西瓜
else:
與老板講價(jià)
if 講價(jià)成功:
買西瓜
else:
不吃了。
雖然和老板講價(jià)一般都能講成功,但是有的老板給力給打五折,有的老板只給打九折。你就想了,若老板打五折,我就買兩個(gè),今天吃一個(gè),明天吃一個(gè)。若老板不給力,打折不到五折,就買一個(gè),今天先吃,明天再說。
if 水果店打折:
買西瓜
else:
與老板講價(jià)
if 打折成功 and 打折力度=5:
買兩個(gè)西瓜
elseif 打折成功 and 打折力度 5:
買一個(gè)西瓜
else:
不吃了。
此外,有沒有發(fā)現(xiàn),打折成功這段代碼其實(shí)也可以寫成:
if 打折成功:
if 打折力度=5:
買兩個(gè)西瓜
else:
買一個(gè)西瓜
else:
不吃了。
由此可見,計(jì)算機(jī)也不是完全的一成不變,只要你給他的命令他能理解并且不會(huì)模棱兩可,他都可以完成工作。
and的意思代表且,or的意思代表或。and和or的順序不同,結(jié)果也不同,可以通過括號(hào)來說明判斷條件的優(yōu)先級(jí)。
a==b是比較a和b是否相等的意思,而=代表賦值。賦值的含義,我在下面的變量章節(jié)介紹。
2 、循環(huán)
python中涉及到循環(huán)的關(guān)鍵字包括:for…in… ,while,break,continue。
上面的例子我們已經(jīng)讓電腦成功的可以根據(jù)不同的情況去水果店買西瓜了,但是若老板不打折,你就吃不到西瓜了。這時(shí),你就想了,咱們小區(qū)門口有三家水果店,分別是鮮豐水果、四季水果和路邊攤,一家不打折不代表三家都不打折啊,所以你希望電腦可以去三家都看看,挑一家打折的店買西瓜。
for 水果店 in (鮮豐水果、四季水果和路邊攤):
if 水果店 打折:
買西瓜
break(循環(huán)結(jié)束)
else:
啥都不做
帶西瓜回家
循環(huán)的意義在于,可以用電腦對(duì)不同的對(duì)象執(zhí)行相同的命令。
介紹下break,break的意思就是結(jié)束循環(huán)。比如,這段代碼中的break表示,我們一旦買了西瓜,那么就帶西瓜回家。
3 、變量
現(xiàn)在是時(shí)候介紹“變量”這個(gè)重要的東西了。
我們依然把電腦理解為幫我們工作的一個(gè)人,那么作為一個(gè)人,他需要有記憶力,而我們就可以通過變量去控制、利用計(jì)算機(jī)的記憶力。
變量可以理解為計(jì)算機(jī)的一個(gè)記憶單元,計(jì)算機(jī)擁有極好的記憶力,所以,可以隨心所欲的使用,用完了就扔,需要了就要。(當(dāng)然,說隨心所欲是不嚴(yán)謹(jǐn)?shù)?,但是你可以理解為隨心所欲)
那為什么叫變量呢,就是因?yàn)榭梢愿淖?。為什么要改變呢?比如我們都有自己的年齡,我今年18,明年就19了。所以,“年齡”在我的記憶里是每年改變的。
變量對(duì)應(yīng)的一個(gè)東西叫常量,在我的記憶力,我的老婆是江江同學(xué)。而這個(gè)“老婆”這個(gè)記憶單元在我的腦子里是不會(huì)變的,她永遠(yuǎn)都是江江同學(xué)。常量你現(xiàn)在可以不用理解,我寫主要是為了秀恩愛。
現(xiàn)在,計(jì)算機(jī)又要去買西瓜了。不過這次,你希望計(jì)算機(jī)可以在三個(gè)水果店中,找到一個(gè)打折力度最大的水果店去買水果。
之前所有水果店的最大折扣 = None
之前給最大折扣的水果店 = None
for 水果店 in (鮮豐水果、四季水果和路邊攤):
當(dāng)前水果店折扣 = 老板給的折扣
if 當(dāng)前水果店折扣 之前所有水果店的最大折扣:#4折比5折力度大
之前所有水果店的最大折扣 = 當(dāng)前水果店折扣
之前給最大折扣的水果店 = 水果店
去 之前給最大折扣的水果店 買一個(gè)西瓜
以上有以下幾個(gè)記憶單元:
之前所有水果店的最大折扣
之前給最大折扣的水果店
當(dāng)前水果店折扣
水果店 注意,for a in b,a也是一個(gè)變量,他在每次執(zhí)行的時(shí)候都是b中的當(dāng)前執(zhí)行的一個(gè)元素。
這里需要介紹一些概念:
None 在python中表示空,表示這個(gè)記憶單元現(xiàn)在啥都沒有。比如在我情竇初開時(shí),腦海中就已經(jīng)有了情人這個(gè)記憶單元,我一直在尋找,但遇到你之前一直沒有找到,所以那段時(shí)間這個(gè)記憶單元里面一直是空。
賦值符號(hào):=。 注意,在計(jì)算機(jī)語(yǔ)言里面,一個(gè)“=”號(hào)表示賦值,兩個(gè)等號(hào)“==”表示比較前后元素。賦值的意思是,把后面的元素,放到前面的變量里面。
變量的作用域
作用域這個(gè)東西非常重要,但是真心不想講,因?yàn)闆]辦法結(jié)合現(xiàn)實(shí)的例子,不過還是大體說明下。
還是剛才的例子,我加了行號(hào),并且我使用-代表空格,表示代碼的縮進(jìn)。
1 之前所有水果店的最大折扣 = None
2 之前給最大折扣的水果店 = None
3 for 水果店 in (鮮豐水果、四季水果和路邊攤):
4 ---當(dāng)前水果店折扣 = 老板給的折扣
5 ---if 當(dāng)前水果店折扣 之前所有水果店的最大折扣:#4折比5折力度大
6 ------之前所有水果店的最大折扣 = 當(dāng)前水果店折扣
7 ---之前給最大折扣的水果店 = 水果店
8 去 之前給最大折扣的水果店 買一個(gè)西瓜
你看這個(gè)例子可能納悶,為什么要先給“之前所有水果店的最大折扣”、“之前給最大折扣的水果店”這兩個(gè)變量賦值為None呢,就是因?yàn)樽饔糜騿栴}。
你看這個(gè)程序,每行代碼的縮進(jìn)都是不一樣的。變量作用域可以理解為:一個(gè)變量,只有在其第一次出現(xiàn)的地方的縮進(jìn),以及縮進(jìn)更多的代碼里面,才有效。我們第1、2行的變量,就可以用于3-8行,因?yàn)檫@些代碼的縮進(jìn)都在1、2行的后面。而第四行的變量“當(dāng)前水果店折扣”,只在5、6、7行有效。
1 A = None
2 ————B = None
3 ————..
4 ————————C = None
5 ————————..
6 ————D = None
7 ————..
8 ————————..
9 ————————..
10 ..
11 ..
再舉個(gè)例子,ABCD是變量,..代表某些代碼。A的作用域就是1-11行,即1-11行都可以使用A。B的作用域是2-9行,C的作用域只有4-5行,注意,8-9行就不能再使用C了,雖然他的縮進(jìn)和4、5行一樣,作用域遇到第一個(gè)不能用縮進(jìn)行代碼即結(jié)束。D的作用域就是6-9行。
4 、函數(shù)
看懂以上幾節(jié),大概應(yīng)該明白計(jì)算機(jī)如何執(zhí)行代碼的了。
而函數(shù)和模塊,和之前的介紹不太一樣。之前是介紹如何讓計(jì)算機(jī)工作,是面向計(jì)算機(jī)的。而這一節(jié),是面向人的,是如何讓我們寫給計(jì)算機(jī)的代碼看起來更加簡(jiǎn)潔、明了。函數(shù)和模塊都是對(duì)代碼結(jié)構(gòu)的優(yōu)化,否則一個(gè)稍微大點(diǎn)的項(xiàng)目,一大坨代碼,計(jì)算機(jī)看得懂人看不懂,不利于管理和交流。
首先說函數(shù)。函數(shù)是一系列代碼的集合,用函數(shù)一般是有幾個(gè)原因:
1.給一段代碼起個(gè)名字。
2.這段代碼和使用它的代碼關(guān)系不大,所以可以抽出來,抽出來后代碼更簡(jiǎn)潔。關(guān)系不大的意思就是:使用函數(shù)的代碼通過傳給函數(shù)幾個(gè)參數(shù),函數(shù)就可以執(zhí)行。
3.代碼集合起來就可以在代碼的不同地方使用。
依然我們?nèi)ベI西瓜,不過我們希望電腦可以今天買完西瓜明天再買一個(gè)。按照之前的方式,這個(gè)邏輯應(yīng)該寫成這樣:
for 水果店 in (鮮豐水果、四季水果和路邊攤):
if 水果店打折:
買西瓜
else:
與老板講價(jià)
if 打折成功 and 打折力度=5:
買兩個(gè)西瓜
elseif 打折成功 and 打折力度 5:
買一個(gè)西瓜
else:
不吃了。
休息一天。
for 水果店 in (鮮豐水果、四季水果和路邊攤):
if 水果店打折:
買西瓜
else:
與老板講價(jià)
if 打折成功 and 打折力度=5:
買兩個(gè)西瓜
elseif 打折成功 and 打折力度 5:
買一個(gè)西瓜
else:
不吃了。
上面的代碼可以實(shí)現(xiàn)我們的要求,但是買西瓜的代碼其實(shí)是重復(fù)的,對(duì)于重復(fù)代碼,管理起來比較麻煩,比如你想改一點(diǎn),那么就要去各個(gè)地方都改一次。
那么,我們把買西瓜的代碼弄成一個(gè)函數(shù),代碼就可以整理為:
def 買西瓜_函數(shù)():
for 水果店 in (鮮豐水果、四季水果和路邊攤):
if 水果店打折:
買西瓜
else:
與老板講價(jià)
if 打折成功 and 打折力度=5:
買兩個(gè)西瓜
elseif 打折成功 and 打折力度 5:
買一個(gè)西瓜
else:
不吃了。
買西瓜_函數(shù)()
休息一天。
買西瓜_函數(shù)()
這一次,代碼整潔多了,而且,我們每次想修改買西瓜的代碼,都只需要改這個(gè)函數(shù)一處代碼都可以。
在python中,使用def function_name():定義函數(shù),函數(shù)下面所有的縮進(jìn)都屬于這個(gè)函數(shù),叫函數(shù)體。
使用function_name()調(diào)用函數(shù)。
4.1 函數(shù)參數(shù)
現(xiàn)在你又不滿足于電腦只會(huì)買西瓜了,你又想吃柚子。怎么辦呢,那么是不是我們又要寫一個(gè)買柚子的函數(shù)呢。當(dāng)然可以再寫一個(gè)買柚子函數(shù),但是買柚子函數(shù)的邏輯和買西瓜函數(shù)的邏輯都是一樣的,命令也一樣,唯一的區(qū)別就是之前是買西瓜,現(xiàn)在是買柚子。如果再寫一個(gè)類似的買柚子函數(shù),那么又出現(xiàn)剛才說的問題,每次修改買水果的邏輯,都需要同時(shí)去修改買西瓜、買柚子函數(shù),如果柚子吃膩了,又要買香蕉、蘋果、梨,豈不是要寫非常多的函數(shù)?
為了解決這個(gè)問題,其實(shí)有一個(gè)更好的方法,就是使用函數(shù)參數(shù)。
由于我們買水果(無論是西瓜、還是柚子)的功能都是一樣的,所以我們可以寫一個(gè)買水果函數(shù),買水果函數(shù)定義了買一個(gè)水果的流程,當(dāng)我們使用這個(gè)函數(shù)的時(shí)候,我們只要告訴這個(gè)函數(shù)我們要買什么水果,函數(shù)就可以根據(jù)你告訴他的水果名,去買對(duì)應(yīng)的水果。
買水果函數(shù)的代碼如下:
def 買水果函數(shù)(水果名):
for 水果店 in (鮮豐水果、四季水果和路邊攤):
if 水果店打折:
買[水果名]
else:
與老板講價(jià)
if 打折成功 and 打折力度=5:
買兩個(gè)[水果名]
elseif 打折成功 and 打折力度 5:
買一個(gè)[水果名]
else:
不吃了。
買水果函數(shù)(西瓜)#讓電腦去買西瓜
買水果函數(shù)(柚子)#讓電腦去買柚子
在python中想使用函數(shù)參數(shù),只需要在函數(shù)定義的時(shí)候,在括號(hào)里面加上參數(shù)即可,我們這里的參數(shù)就是“水果名”。在函數(shù)體中代碼可以使用函數(shù)參數(shù)。
在調(diào)用函數(shù)的時(shí)候,把一個(gè)變量或者常量寫在函數(shù)名后面的括號(hào)里面,傳給函數(shù)。
注意,若是存在多個(gè)參數(shù),函數(shù)定義和調(diào)用函數(shù)的參數(shù)順序一定要一致。
在python中,還存在默認(rèn)參數(shù)、關(guān)鍵字參數(shù)等稍微高級(jí)一點(diǎn)的使用方式,舉個(gè)例子,不詳細(xì)說明了。
def sum(a, b = 0,c = 1):#b/c是默認(rèn)參數(shù)
return a+b+c
func(1,0,1)
func(1)
func(1,c=1)
這三個(gè)func調(diào)用的結(jié)果都是一樣的。
5 、模塊
剛才我們已經(jīng)講了函數(shù),函數(shù)就是把代碼整合起來。而模塊,就是把更多代碼整合起來。
模塊和函數(shù)的引入是為了解決類似的問題:管理代碼段,并且給他們起一個(gè)名字。
一般來說,一個(gè)模塊就是一個(gè)py文件,里面可能包括很多函數(shù),也可以包括一些類的定義(這個(gè)我們后面講哦)。
模塊的引入就是為了將代碼更好地管理。
我們把代碼放在一個(gè)py文件中,這個(gè)py文件就是一個(gè)模塊,在其他py文件里面,我們就可以使用import關(guān)鍵字,將模塊引入。
比如,我們現(xiàn)在有一個(gè)a.py文件,里面有一些函數(shù),比如buyxigua,buyyouzi等,若我們想在b文件中使用這些函數(shù),那么我們必須在使用前,導(dǎo)入a模塊。
導(dǎo)入一個(gè)模塊并使用模塊里面的函數(shù)有很多方法,我把常見的方法列在下面.
方法一:
import a
a.buy_xigua()
a.buy_youzi()
這種方法導(dǎo)入模塊a,然后通過模塊函數(shù)調(diào)用函數(shù)。
方法二:
from a import *
buy_xigua()
buy_youzi()
這個(gè)方式導(dǎo)入模塊a中的所有內(nèi)容,可以直接使用。
方法三:
from a import buy_xigua,buy_youzi
buy_xigua()
buy_youzi()
這個(gè)方式導(dǎo)入模塊a中的指定內(nèi)容,可以直接使用,一般這種方法在軟件開發(fā)過程中使用的比較多,原因是我們只把需要的內(nèi)容導(dǎo)入使用,不需要的不導(dǎo)入。(按需使用別浪費(fèi),在哪里都是個(gè)好習(xí)慣,深層原因超出教程范圍)
6 、類和對(duì)象
類和對(duì)象的概念,對(duì)于沒有接觸過編程的同學(xué)來說,可能稍微有些不好理解。我記得當(dāng)年第一次接觸這個(gè)概念,也迷糊了一段時(shí)間。
之前,我們介紹過“變量”。變量的引入,是為了描述程序內(nèi)的記憶單元。一個(gè)變量可以是一個(gè)數(shù)字,也可以是一個(gè)字符串(比如設(shè)置一個(gè)變量 名字='水風(fēng)')。
但是,有些東西需要使用很多變量共同描述才可以。比如,一個(gè)買西瓜的人。買西瓜的人有很多特征,比如:名字、存款,持有西瓜數(shù)量。此外,買西瓜的人也有一些行為,比如買西瓜這個(gè)行為。為了實(shí)現(xiàn)買西瓜的人這個(gè)功能,我們引入類和對(duì)象的概念。注意,類/對(duì)象引入想解決的問題和函數(shù)、模塊所解決的問題不一樣。函數(shù)和模塊的引入更多的是為了管理代碼,而類/對(duì)象的引入是為了把狀態(tài)和行為封裝在一起。
那么,類和對(duì)象分別是什么意思呢。類是我們定義的一種東西有哪些狀態(tài)和行為,比如買西瓜的人有狀態(tài)和行為,我們提前定義好他們,類的概念是一種虛擬的。而對(duì)象就是代碼在執(zhí)行的過程中,去動(dòng)態(tài)創(chuàng)建、生成的一個(gè)實(shí)體。
好啦,這樣教女朋友寫Python是不是簡(jiǎn)單了許多呢?
網(wǎng)站題目:香蕉函數(shù)python 香蕉函數(shù)的各類最優(yōu)解法
URL鏈接:http://www.rwnh.cn/article8/dosheop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、企業(yè)網(wǎng)站制作、小程序開發(fā)、自適應(yīng)網(wǎng)站、App設(shè)計(jì)、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)