当前位置: 首页 > article >正文

Python面试题常用函数总结

1. Python 中 join() 的用法

'a'.join(s) : 返回在 s 的每一个元素之间插入字符串 a 的新字符串。
参数说明
a:分隔符,可以为空
s:要连接的元素序列、字符串、元组、字典
上面的语法即:以 a 作为分隔符,将 s 所有的元素合并成一个新的字符串
返回值:返回一个以分隔符 a 连接各个元素后生成的字符串 

补充:os.path.join()函数
语法: os.path.join(path1[,path2[,…]])
返回值:将多个路径组合后返回
注:第一个绝对路径之前的参数将被忽略 

#对序列进行操作 使用‘ ’作为分隔符
s= ['hello' , 'how' , 'are' , 'you' ]
print(' '.join(s))
#对字符串进行操作
# 输出 hello how are you

# 对元祖进行操作
s = ('hello' ,'good' , 'boy', 'liu')
print(':'.join(s))
# 输出 hello:good:boy:liu

# 对字典进行操作
s = {'hello':1 , 'good':2, 'boy':3}
print(':'.join(s))
# 输出 hello:good:boy

# 合并目录
import  os
print(os.path.join('/hello/','good/boy/','xu'))
# 输出 /hello/good/boy/liu

2. list(s)函数

list(s) 函数将序列 s 转换为一个列表
描述:list() 方法用于将元组或字符串转换为列表。
注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中,列表是放于方括号中。
语法:list( seq )
参数 seq 是要转换为列表的元组或字符串。
返回值:返回列表。

>>> s='hello'
>>> print(list(s))
['h', 'e', 'l', 'l', 'o']

>>> s=('hello','world','123')
>>> print(list(s))
['hello', 'world', '123']

3. Python 中是没有 ++ 和 -- 操作的,自增自减操作可通过 +=/-=

4. split()函数

string.split(str, num)

str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
num – 分割次数。规定要执行的拆分数。默认值为 -1,即“所有出现次数”。

描述:split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。它是按指定的分隔符,把一个字符串分隔成指定数目的子字符串,然后把它们放入一个列表中,其中每个单词都是一个列表项。

#例1:
>>> a="I love China"
>>> a.split()   # 分隔符为空,分割次数默认
['I', 'love', 'China']

#例2:
>>> b="I love China, and you, you"
>>> b.split(", ")    # 使用逗号和空格作为分隔符
['I love China', 'and you', 'you']
 
#例3:
>>> c="I#love#China#andyou#you"
>>> c.split("#")   #使用#作为分隔符
['I', 'love', 'China', 'andyou', 'you']

#例4:
>>> d="I#love#China#andyou#you"
>>> d.split("#",1)   # 将 max值为 1,将返回包含 2 个元素的列表
['I', 'love#China#andyou#you']
 
#例5:
>>> e="with great power comes great responsibility. I love China and you you"
>>> e.split(" ",15) #空格为分隔符
['with', 'great', 'power', 'comes', 'great', 'responsibility.', 'I', 'love', 'China', 'and', 'you', 'you'] 

5. 巧用 [::-1] python字符串切片方法 

[::-1] 是一个逆序操作,核心是切片。设有列表/字符a,则切片的语法为 b = a[start_index: end_index: step]

s1 = s[: : -1] 其实就是s1 = s[-1: : -1]

>>> s='the sky is blue'
>>> print(list(s)[::-1])
['e', 'u', 'l', 'b', ' ', 's', 'i', ' ', 'y', 'k', 's', ' ', 'e', 'h', 't']
>>> print(s.split()[::-1])
['blue', 'is', 'sky', 'the']
>>> print(s[::-1])
eulb si yks eht
>>> a=['h','e','ll','o']
>>> print(a[::-1])
['o', 'll', 'e', 'h']

6. Counter()函数 

Counter() 是 collections 库中的一个函数,可以用来统计一个 python 列表、字符串、元组等可迭代对象中每个元素出现的次数,即统计词频 并返回一个字典

from collections import Counter
 
nums = [1, 1, 1, 6, 6, 6, 7, 8]
count = Counter(nums)  # 统计词频
for k, v in count.items():
    print(k, v)
print(count)
"""
输出:
1 3
6 3
7 1
8 1
Counter({1: 3, 6: 3, 7: 1, 8: 1})
"""

使用 Counter 统计完词频后可以使用 most_common 方法来查找出现频率最高的 k 个数字及其出现次数。

from collections import Counter
 
nums = [1, 1, 1, 6, 6, 6, 7, 8]
 
count = Counter(nums)
 
ansdict = count.most_common(2)  # 返回出现次数最多的两个数及其出现的次数
print(ansdict) # 注意输出格式
ans = []
for i in range(len(ansdict)):
    ans.append(ansdict[i][0])  # 提取出出现次数最多的两个数
print(ans)
 
"""
输出:
[(1, 3), (6, 3)]
[1, 6]
"""

7. 字典(Dictionary)的 get()方法 

 get() 函数返回指定键的值。

dict.get(key[, value]) 
  • key -- 字典中要查找的键。
  • value -- 可选,如果指定键的值不存在时,返回该默认值。
  • 返回指定键的值,如果键不在字典中返回默认值 None 或者设置的默认值。
tinydict = {'Name': 'Runoob', 'Age': 27}

print ("Age : %s" %  tinydict.get('Age'))

# 没有设置 Sex,也没有设置默认的值,输出 None
print ("Sex : %s" %  tinydict.get('Sex'))  

# 没有设置 Salary,输出默认的值  0.0
print ('Salary: %s' % tinydict.get('Salary', 0.0))

# 输出
Age : 27
Sex : None
Salary: 0.0

 


http://www.kler.cn/a/13749.html

相关文章:

  • 【人工智能概论】 RNN、LSTM、GRU简单入门与应用举例、代码耗时计算
  • 《花雕学AI》24:如何用万能Prompt公式与ChatGPT进行高效的对话测试
  • 卖房子真是稳赚不赔
  • 【C/C++】MySQL 为什么选择 B+ 树作为底层数据结构
  • 大数据架构(二)大数据发展史
  • 为什么要进行倾斜摄影三维模型的顶层合并?
  • GCM与CCM的动作过程
  • 软件测试好学习吗?
  • rpm命令查询和取包中内容
  • Unity-ML-Agents--Learning-Environment-Design-Agents.md-代码解读(2)
  • Microsoft Defender for Identity部署方案
  • 代码生涯冲常见的的bug.例如layui表格中日期自动生成、eacharts 报表的重复点击事件
  • vue监听事件
  • 由浅入深MFC学习摘记--第四部分上
  • 微信小程序对接在线客服系统,对接小程序订阅消息模板,小程序订阅方法以及后端发送订阅模板消息的方法...
  • 车载软件架构——闲聊几句AUTOSAR BSW(一)
  • AI算力碎片化:矩阵乘法的启示
  • AD9208之8通道高速采集
  • JVM实战调优案例
  • Simon IELTS: Speaking