博客
关于我
Python 中的... 三点、箭头(->)、/ 分别的作用
阅读量:798 次
发布时间:2023-03-06

本文共 1852 字,大约阅读时间需要 6 分钟。

Python代码中的...、→和/三种符号的作用及实用技巧

在Python编程中,...、→和/这三个符号虽然看起来不同,但在特定场景下都有独特的用途。以下从实际案例出发,深入解析这三种符号的作用及其适用场景。

1. ...的作用

作用一:占位符

...在Python中是一个占位符,常用来表示代码逻辑尚未完成或不需要具体处理某些情况。例如:

if flag:    print(flag)else:    ...

...比pass更具有代表性,写起来也更直观,特别是当你想在代码中留下待完成的位置时。

作用二:默认值的传递

...也可以作为一个默认值,尤其是在函数参数中。当你想区分传入None和传入实际值时,...可以起到区分作用。例如:

def testThreeDot(flag=...):    if flag:        print(flag)    else:        ...

执行结果:

def testThreeDot(flag=...):    if flag:        print(flag)    else:        ...

输出结果:

ellipsis

作用三:对象类型的确认

...是一个对象,可以通过type(...)来确认其类型。例如:

type(...)

输出结果:

ellipsis

2. →的作用

作用:参数和返回类型的建议

→在Python中用于标注参数和返回值的建议类型,类似于JSDoc中的@param@return。例如:

# 冒号后边的int是建议传入的类型,重点是建议,所以你不传入这种类型也行,这是学习强类型语言,为了提高编译速度# 箭头后边是建议返回的类型,...相当于pass,感觉可能这样写起来更方便(pass的写四个字母而...只需要点三下)def testArrow(flag:int) -> None:    ...

执行结果:

def testArrow(flag:int) -> None:    ...

3. /的作用

作用一:路径分隔符

在Python中,/默认不是路径分隔符,但在PosixPath类型的对象上,/可以作为路径分隔符。例如:

from pathlib import PathFILE = Path(__file__).resolve()ROOT = FILE.parents[0]print(ROOT)print(type(ROOT))def test(default=ROOT / 'test'):    print(default)    def test2(default='aa'/'test'):    print(default)test2()

执行结果:

/Users/jjw/Desktop/后端项目/yolov5.6
/Users/jjw/Desktop/后端项目/yolov5.6/testTraceback (most recent call last): File "/Users/jjw/Desktop/后端项目/yolov5.6/my_test.py", line 16, in
def test2(default='aa'/'test'):TypeError: unsupported operand type(s) for /: 'str' and 'str'

从结果可以看出,单纯的/不能单独使用,只有当和PosixPath类型的对象结合使用时才可以作为路径分隔符使用。

作用二:魔法方法的重写

在某些情况下,你可以重写__truediv__魔法方法,使得对象支持除法运算。例如:

class MyTest:    def __init__(self, args):        print('args:\t', args)        self.args = args    def __truediv__(self, other):        print('other:\t', other)        return self.args+'/'+otherprint(MyTest('jjw')/'1.txt')

执行结果:

args: jjwother: 1.txtjjw/1.txt

从上边的执行结果可以看出,通过重写魔法方法__truediv__,你可以定义自定义的除法运算符。

转载地址:http://lfofk.baihongyu.com/

你可能感兴趣的文章
Python 从数据库中存储和检索密码的最安全方法
查看>>
Python语言及其应用 - 知识点遍历
查看>>
Python 优化提速的 8 个小技巧
查看>>
Python 余弦相似度与皮尔逊相关系数 计算
查看>>
python 使用execjs 报编码错误解决办法,UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 145: il
查看>>
python 使用filetype校验文件
查看>>
Python 使用flush函数将缓冲区数据立即写磁盘
查看>>
python 使用in判断不准确,in不好使
查看>>
Python 使用pandas 进行查询和统计详解
查看>>
Redis 配置文件redis.conf详细解释
查看>>
python网络爬虫(2)——scrapy框架的基础使用
查看>>
python网络爬虫实例教程试读_Python网络爬虫实战教程(全套完整版) - 学途无忧网 - 做技术的王者 - Powered By EduSoho...
查看>>
Python 使用哈希函数用于加密
查看>>
Python 依赖管理的革新——Poetry 深度解析
查看>>
python 保留精度及增加去除数字的千位分隔符(金额化数字)
查看>>
python 倒计时 9,8,7,。。。。。。0
查看>>
Python 入门开发学习笔记之数据的增删改查
查看>>
Python 入门教程(2)搭建环境 2.4、VSCode配置Node.js运行环境
查看>>
Python 八大排序算法合集
查看>>
python 关于epoll的学习
查看>>