那如果我输入无效参数,比如中文字符,该返回什么
时间: 2024-03-14 22:46:33 浏览: 17
如果输入无效参数比如中文字符,可以在函数中加入异常处理,抛出一个 ValueError 异常,提示用户输入有效的股票代码,如下所示:
```python
import yfinance as yf
import akshare as ak
def get_stock_price(stock_code=None):
if not stock_code:
stock_code = 'BABA' # 默认为阿里巴巴股票代码
if not isinstance(stock_code, str) or not stock_code.isalnum():
raise ValueError("请输入有效的股票代码!")
if stock_code.isnumeric(): # 数字代码为 A股或港股代码
if len(stock_code) == 6:
stock_code += '.SS' # A股代码在股票代码后面加上 .SS
else:
stock_code += '.HK' # 港股代码在股票代码后面加上 .HK
stock = ak.stock_zh_a_daily(symbol=stock_code)
return stock.iloc[-1]['close']
else: # 字母代码为美股代码
stock = yf.Ticker(stock_code)
stock_info = stock.info
return stock_info['regularMarketPrice']
# 查询阿里巴巴股票价格
print(get_stock_price())
# 查询苹果股票价格
print(get_stock_price('AAPL'))
# 查询中国平安股票价格
print(get_stock_price('601318'))
# 查询无效股票代码
print(get_stock_price('中文字符'))
```
这段代码在输入无效股票代码时会抛出 ValueError 异常,提示用户输入有效的股票代码。