我还是小葡萄 发表于 2017-7-15 12:07:10

关于数组中的方法sort的问题


首先我不是用的IDLE是用atom编辑器编辑py,然后在终端中运行;

我想请教个问题:

加入我有一个数组    li1 =

我可以
li1.sort()
print(li1)
=>从小到大排序正常

但是不可以:
print(li1.sort())
=>None

想请教一下为什么不能这样!

ba21 发表于 2017-7-15 12:25:59

返回值:是一个经过排序的可迭代类型,与iterable一样。
sort() 是一个方法。你用li1来sort(),他的返回值就给了li1了。
sort()与sorted()的不同在于,sort是在原位重新排列列表,而sorted()是产生一个新的列表。

我还是小葡萄 发表于 2017-7-15 18:40:50

ba21 发表于 2017-7-15 12:25
返回值:是一个经过排序的可迭代类型,与iterable一样。
sort() 是一个方法。你用li1来sort(),他的返回值 ...

是不是可以这样理解?:
a =
a.sort()=>这边并没有返回值,而是直接指向了a,所以print(a.sort())的时候· 里面并没有返回的值,所以输出为None?

ba21 发表于 2017-7-15 18:41:48

我还是小葡萄 发表于 2017-7-15 18:40
是不是可以这样理解?:
a =
a.sort()=>这边并没有返回值,而是直接指向了a,所以print(a.sor ...

是的。
要不你也可以用sorted()

我还是小葡萄 发表于 2017-7-15 18:49:59

ba21 发表于 2017-7-15 18:41
是的。
要不你也可以用sorted()

噢噢· ! 好的 ! 还想问下·字符串的方法中·有个casefold`不过我写总是报错str 不支持casefold·
AttributeError: 'str' object has no attribute 'casefold'
这是因为python版本问题?

ba21 发表于 2017-7-15 18:51:25

我还是小葡萄 发表于 2017-7-15 18:49
噢噢· ! 好的 ! 还想问下·字符串的方法中·有个casefold`不过我写总是报错str 不支持casefold ...

不可能。你把代码重新发个贴。我马上去看下。

我还是小葡萄 发表于 2017-7-15 18:58:48

ba21 发表于 2017-7-15 18:51
不可能。你把代码重新发个贴。我马上去看下。

发了个帖子,里面有截图·
页: [1]
查看完整版本: 关于数组中的方法sort的问题