單價(jià): | 面議 |
發(fā)貨期限: | 自買家付款之日起 天內(nèi)發(fā)貨 |
所在地: | 廣東 廣州 |
有效期至: | 長期有效 |
發(fā)布時(shí)間: | 2023-12-19 06:40 |
最后更新: | 2023-12-19 06:40 |
瀏覽次數(shù): | 69 |
采購咨詢: |
請(qǐng)賣家聯(lián)系我
|
智能合約Solidity中,contract關(guān)鍵字包含的代碼**段即表示
一個(gè)智能合約,它擁有一些成員變量,表示該合約的數(shù)據(jù),如我們的HelloWorld中的hello,我們可以修改操作這些成員。同時(shí)
它擁有案例I8I流程**259I技術(shù)3365過程一些function,可以被他人調(diào)用。
event是Solidity提供的一種事件和訂閱機(jī)制,智能合約能夠發(fā)出一些event,合約調(diào)用者能夠監(jiān)聽這些事件并作出相應(yīng)的反
應(yīng)。
這個(gè)合約沒有做很多事情,它只會(huì)在有人調(diào)用它的sayHello方法時(shí),發(fā)出一個(gè)say事件。接下來讓我們來部署和執(zhí)行它。
pragma solidity ^0.4.21;
contract HelloWorld {
string hello = "Hello World!!!";
event say(string _value);
function sayHello() public {
emit say(hello);
}
}
智能合約(英語:Smart contract )是一種旨在以信息化方式傳播、驗(yàn)證或執(zhí)行合同的計(jì)算機(jī)協(xié)議。智能合約允許在沒有第三方的情況下進(jìn)行可信交易,這些交易可追蹤且不可逆轉(zhuǎn)。
智能合約是運(yùn)行在***公鏈上的一種代碼,該代碼由Solidity編寫,并通過***的智能合約虛擬機(jī)來執(zhí)行,以達(dá)到對(duì)***編程的目標(biāo)??梢詫?**公聯(lián)理解為操作系統(tǒng),
import web3
w3 = web3.Web3(web3.HTTPProvider('))
abi="[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"b\",\"type\":\"uint256\"}],\"name\":\"add\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"b\",\"type\":\"uint256\"}],\"name\":\"mul\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\"}],\"name\":\"sqr\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"}],\"name\":\"sqrt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"y\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"a\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"b\",\"type\":\"uint256\"}],\"name\":\"sub\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}]"
c = w3.eth.contract(address='0x1aC3CD1b37898ed4D3005f3C12b4425A6eFFDc30', abi=abi)
a=5
b=4
rtn= c.caller().add(a,b)
print(f"{a}+={rtn}")
rtn= c.caller().mul(a,b)
print(f"{a}*={rtn}")
rtn= c.caller().sub(a,b)
print(f"{a}-={rtn}")
rtn= c.caller().sqr(a)
print(f"sqr({a})={rtn}")
rtn= c.caller().sqrt(a)
print(f"sqrt({a})={rtn}")