以下关于python二维数据的描述中错误的是_python练习题--2

1、判断字符list中是否有重复

思路:通过集合去重,然后对比list长度,重复返回False,不重复返回True

#检查是否有重复元素

defcheck_repeat(list):return len(list)==len(set(list))

2、两个字符串每个字符出现次数均相等,顺序可以不同

counter方法可以统计字符出现次数

#检测两个字符串是否互为变位词(即互相颠倒字符顺序)

from collections importCounterdefcounter_str(first,second):return Counter(first)==Counter(second)

3、以字节为单位返回字符串长度

思路:字符串编码格式改为UTF-8,然后统计长度

#以字节为单位返回字符串长度

defbyte_size(str):return len(str.encode('utf-8')) #一个汉字占3个字节

4、重复打印字符串

思路:乘以n,实现多次的效果

#重复打印字符串N次

n=7str='zhao'

print(str*n)

5、字符串中每个词首字母大写

#首字母大写,字符串每个词进行首字母大写

s='count your awesome'

print(s.title()) #字符串内每个词进行首字母大写

6、删除list中错误的数据

bool函数,错误的数就是FALSE,0,none,filter相当于迭代器,把list中的每个值传给bool方法

#以下方法使用fliter()删除列表中的错误值(如:false,none,0和"")

defcompact(lst):returnlist(filter(bool,lst))print(compact([0,1,False,2,3,None,4,5]))

7、间隔数--转换二维数组

思路:通过解包函数,把array数组每个二维数组解包,重新组合

#间隔数--转换一个二维数组

array=[['a','b'],['c','d'],['e','f']]

transposed=list(zip(*array))print(transposed) #[('a', 'c', 'e'), ('b', 'd', 'f')]

8、字符串列表转换为单个字符串,列表中的每个元素用逗号分隔

#字符串列表转换为单个字符串,列表中的每个元素用逗号分隔

hobbies=['your','jeans','swimming']print(','.join(hobbies))

9、计算元音字母数

思路:通过正则匹配,然后统计得出数组的长度就是元音字母数

importredefword_num(str):return len(re.findall('[aeiou]',str)) #正则匹配,然后统计个数

10、字符串首字母转小写

#首字母恢复小写 ----给定字符串的第一个字母转为小写

defdecapitalize(str):return str[:1].lower()+str[1:]

11、多维数组变一维数组

#多维数组变一维数组

defspread(arg):

ret=[]for i inarg:ifisinstance(i,list):

ret.extend(i)else:

ret.append(i)returnretdefdeep_spread(lst):

rets=[]

rets.extend(spread(list(map(lambda x:deep_spread(x) if type(x)==list elsex ,lst ))))returnretsprint(deep_spread([1,[3],[[3],4],5]))

12、找出两个数组中不同的字符

#差异--找出两个数组中不同的数

defdifference(a,b):

set_a=set(a)

set_b=set(b)

comparison=set_b.symmetric_difference(set_a)returnlist(comparison)print(difference([3,4,5],[2,3,4]))

13、链式函数,以下方法可在一行中调用多个函数

defadd(a,b):return a+bdefsubstract(a,b):return a-b

a,b=4,5

print((substract if a>b else add)(a,b)) #一行调用多个函数

14、合并两个字典

def merge_two_dicts(a,b): #第一种方法

c=a.copy()

c.update(b)returncdef merge_dictionaries(a,b): #第二种方法

return {**a,**b}

a= { 'x' : 1, 'y' : 2}

b= { 'y' : 3, 'z' : 4}print(merge_two_dicts(a, b))print(merge_dictionaries(a,b))

15、两个列表变为字典

思路:解包函数

defto_dic(keys,values):returndict(zip(keys,values))print(to_dic([3,4,5],[6,7,8]))

16、枚举函数

list=['a','b','c','d','e']for index,values inenumerate(list):print("value:%s , index:%s"%(values,index))

17、try-else

#try else ---你可以将ELSE子句作为try/except块的一部分,如果没有抛出异常,则执行该子句

try:2*3

exceptTypeError:print('aaa')else:print('bbb')

18、找出列表中出现次数最多的元素

defmost_frequent(list):return max(set(list),key=list.count)

list=[1,2,3,4,1,2]print(most_frequent(list))

19、没有if-else语句的简单计算器

#没有if-else语句的简单计算器

importoperator

action={"+":operator.add,"-":operator.sub,"/":operator.truediv,"*":operator.mul,"**":pow

}print(action["+"](50,34))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值