鱼C论坛

 找回密码
 立即注册
查看: 1562|回复: 8

[已解决]定义一个新类,支持移位操作

[复制链接]
发表于 2017-8-4 07:23:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
课时41的练习题:定义一个新类Nstr,支持移位操作,代码如下:
  1. class Nstr(str):
  2.     def __Lshift__(self,other):
  3.         return self[other:] + self[:other]

  4.     def __rshift__(self,other):
  5.         return self[:-other] + self[-other:]
  6.         
复制代码

结果却显示这个,是因为移位符号吗,请大家帮我看一下
最佳答案
2017-8-4 08:12:46
def __lshift__(self,other):
注意要小写!
捕获.JPG
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-8-4 07:37:07 | 显示全部楼层
本帖最后由 新手·ing 于 2017-8-4 08:15 编辑

楼下的楼下正解
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 07:43:53 | 显示全部楼层
本帖最后由 新手·ing 于 2017-8-4 08:16 编辑

楼下正解
6T[[}F)_B_UBUB3R$0A9WLK.png
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 08:12:46 | 显示全部楼层    本楼为最佳答案   
def __lshift__(self,other):
注意要小写!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 08:15:35 | 显示全部楼层
冬雪雪冬 发表于 2017-8-4 08:12
def __lshift__(self,other):
注意要小写!

冬雪,大小写有什么区别呢,Python不是没有这种操作吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 08:18:17 | 显示全部楼层
新手·ing 发表于 2017-8-4 08:15
冬雪,大小写有什么区别呢,Python不是没有这种操作吗

首先python是区分大小写的。
<<和>>作为位运算操作主要用于整数运算。
  1. >>> 123>>4
  2. 7
  3. >>> 2<<3
  4. 16
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 08:19:09 | 显示全部楼层
冬雪雪冬 发表于 2017-8-4 08:18
首先python是区分大小写的。
作为位运算操作主要用于整数运算。

谢谢冬雪大佬
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-4 08:19:41 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-4 08:35:33 | 显示全部楼层
冬雪雪冬 发表于 2017-8-4 08:12
def __lshift__(self,other):
注意要小写!

明白了,多谢了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-1 07:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表