前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【python】python指南(五):静态类型注解之List

【python】python指南(五):静态类型注解之List

作者头像
LDG_AGI
发布2024-08-13 16:24:25
790
发布2024-08-13 16:24:25
举报
文章被收录于专栏:人工智能极简应用

一、引言

对于算法工程师来说,语言从来都不是关键,关键是快速学习以及解决问题的能力。大学的时候参加ACM/ICPC一直使用的是C语言,实习的时候做一个算法策略后台用的是php,毕业后做策略算法开发,因为要用spark,所以写了scala,后来用基于storm开发实时策略,用的java。至于python,从日常用hive做数据策略用python写udf,到基于tensorflow深度学习框架写python版的模型网络,再到现在实用pytorch做大模型。眼看着在语言纷争中,python的应用越来越广,开一个单独的专栏用于记录python中常用到的技巧,算是做笔记,没事翻出来看看。

在Python 3.5版本后引入的typing模块为Python的静态类型注解提供了支持,这个模块在增强代码可读性和维护性方面提供了帮助,今天简要概述一下List

二、参数类型注解之List

2.1 列表类型

List是常用的数据结构:列表,用于存储若干个元素。List类型注解如下

代码语言:javascript
复制
from typing import List

# 定义一个名为user的函数,接收一个整数列表(List[int])类型的参数user_data,并无返回值(None)
# 函数作用:打印传入数据user_data是一个整数列表,以及列表中的每个元素都是整数类型,同时输出数据本身
def user(user_data: List[int]) -> None:
    print(user_data, type(user_data))
    return user_data


user_list=user(["daoguang", 520]) #['ligo', 123] <class 'list'>
for i in user_list:
    print(i,type(i))

2.2 常见问题

这里有2个地方其实不是很规范:

  1. user函数定义的是一个int型列表,在传入的过程中输入了字符串,这是不规范的用法,Python 解释器不会抛出异常,但会将字符串当作一个列表的单个元素进行处理,
  2. user函数return返回实际是一个List[int],但定义返回类型是None,应该是List[int]

以上两点Python 解释器不会检查函数的返回类型,所以这段代码可以正常运行。但是,如果使用类型检查工具,它会检测到类型不匹配,并发出警告或错误

三、总结

本文使用简单的例子讲解函数注解List的用法,下一篇讲解Dict字典类型。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、引言
  • 二、参数类型注解之List
    • 2.1 列表类型
      • 2.2 常见问题
      • 三、总结
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档