diff --git a/web3/contract.py b/web3/contract.py
index d8b7227bbd..0763eeef39 100644
--- a/web3/contract.py
+++ b/web3/contract.py
@@ -964,8 +964,8 @@ def call(
self.contract_abi,
self.abi,
state_override,
- *self.args,
- **self.kwargs
+ *self.args is self.args else [],
+ **self.kwargs if self.kwargs else {}
)
def transact(self, transaction: Optional[TxParams] = None) -> HexBytes:
@@ -1001,8 +1001,8 @@ def transact(self, transaction: Optional[TxParams] = None) -> HexBytes:
transact_transaction,
self.contract_abi,
self.abi,
- *self.args,
- **self.kwargs
+ *self.args is self.args else [],
+ **self.kwargs if self.kwargs else {}
)
def estimateGas(
@@ -1044,8 +1044,8 @@ def estimateGas(
self.contract_abi,
self.abi,
block_identifier,
- *self.args,
- **self.kwargs
+ *self.args is self.args else [],
+ **self.kwargs if self.kwargs else {}
)
def buildTransaction(self, transaction: Optional[TxParams] = None) -> TxParams:
@@ -1083,8 +1083,8 @@ def buildTransaction(self, transaction: Optional[TxParams] = None) -> TxParams:
built_transaction,
self.contract_abi,
self.abi,
- *self.args,
- **self.kwargs
+ *self.args is self.args else [],
+ **self.kwargs if self.kwargs else {}
)
@combomethod