先来看一段代码:
ss=set("htslbht")
sorted(ss,reverse=False) #升序输出
print("排序后的集合:",ss)
print("sorted后的集合:",sorted(ss))
print("遍历后的集合:",end="")
for i in ss:
print(i,end='')
print() #换个行
sss=[{'h','t','s','l','b','h','t'}] #不能在集合中使用这个函数,所以包在列表中
sss.sort() #这是一个破坏性的过程
print(sss.sort()) #即不能直接这样打印,会得空
print(sss)
ssss=[{5,7,8,3,4}]
ssss.sort()
print(ssss)
多次运行后是这样:
首先要知道集合是无序的且无索引,所以对集合进行排序是没用的,但是通过打印sorted(集合),它可以返回一个排序好的列表。
然后sort()函数,它可以排序列表里集合的数字,却不能排序列表里集合的字符。
下一个
eval()的功能是将任意含有数字的字符串转化成有效的数字,进而参与表达式求值运算或直接返回数字结果。
来看代码:
num1=eval("5"+"1*2")
num2=eval("5+1"+"*2")
num3=eval("5*1"+"2")
num4=eval("5*1"+"+2")
print(num1,num2,num3,num4)
过程即:51 *2、5+1 *2、5 *12、5 *1+2
这个其实仔细看看就能知道字符串里+号和运算符+号的区别。



