如何编写一个以 defbeforePeriod(s): 开头的 Python 函数,它返回字符串 s 中第一个句点之前的子字符串,即参数。该字符串包含一个句点。所以如果 s 是“abc2.3ty”,我的函数将返回“abc2”
问问题
49 次
3 回答
1
import re
def beforePeriod(s):
m = re.match('(.*)\..*',s)
if m:
return m.groups()[0]
或者
def beforePeriod(s):
return s[s:s.index('.')]
或者
def beforePeriod(s):
return s.split('.')[0]
于 2012-12-19T18:35:31.410 回答
0
如果您查看 docs.python.org 部分5.6.1。字符串方法你会看到一个str.find()
函数:
str.find(sub[, start[, end]])
返回找到子字符串 sub 的字符串中的最低索引 ... find() 方法仅应在您需要知道 sub 的位置时使用。
find()
可以如以下示例所示使用,该示例是从 ipython 解释器脚本中截取的。
In [2]: def defbeforePeriod(s):
...: return s[:s.find('.')]
...:
In [3]: defbeforePeriod('abc2.3ty')
Out[3]: 'abc2'
In [4]: defbeforePeriod('abc2.3ty.zeta')
Out[4]: 'abc2'
于 2012-12-19T18:40:04.147 回答
-1
如果您正在尝试操作文件名,请os.path
查看os.path.splitext()
.
于 2012-12-19T19:05:04.650 回答