如何在Python中以C风格声明变量类型
我是一名编程学生,老师用C语言来教我们编程的基本概念。他说我可以用Python来交作业(因为这样做更简单、更快)。我希望我的代码能尽量和C语言的写法相似。
我的问题是:
在Python中,如何像在C语言中那样声明变量的数据类型?比如:
int X,Y,Z;
我知道在Python中可以这样做:
x = 0
y = 0
z = 0
但是这样看起来工作量很大,而且失去了Python比C语言更简单、更快的意义。那么,有没有更简洁的方法来做到这一点呢?
附注:我知道在Python中大多数情况下不需要声明数据类型,但我还是想这样做,这样我的代码看起来能和同学们的更相似。
8 个回答
16
简单来说:在Python中,类型提示主要是用来给出一些提示的。
x: int = 0
y: int = 0
z: int = 0
188
从Python 3.6开始,你可以为变量和函数声明类型,像这样:
explicit_number: type
或者对于一个函数
def function(explicit_number: type) -> type:
pass
这个例子来自这篇文章:如何在Python 3.6中使用静态类型检查,更清晰明了
from typing import Dict
def get_first_name(full_name: str) -> str:
return full_name.split(" ")[0]
fallback_name: Dict[str, str] = {
"first_name": "UserFirstName",
"last_name": "UserLastName"
}
raw_name: str = input("Please enter your name: ")
first_name: str = get_first_name(raw_name)
# If the user didn't type anything in, use the fallback name
if not first_name:
first_name = get_first_name(fallback_name)
print(f"Hi, {first_name}!")
28
补充说明:Python 3.5 引入了 类型提示,这是一种指定变量类型的方法。这个回答是在这个功能出现之前写的。
在 Python 中没有像其他编程语言那样声明变量的方法,因为在 C 语言中所说的“声明”和“变量”在 Python 中并不存在。这段代码会将三个名字绑定到同一个对象上:
x = y = z = 0