import re
在莲花等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、做网站 网站设计制作按需求定制设计,公司网站建设,企业网站建设,成都品牌网站建设,全网营销推广,成都外贸网站建设公司,莲花网站建设费用合理。
import sys
def function_name(f):
t = f.read()
names = re.findall(r"def (.+?)\(", t)
return names
def main():
names = None
if len(sys.argv) 1:
with open(sys.argv[1]) as f:
names = function_name(f)
else:
names = function_name(sys.stdin)
print(names)
main()
用正则表达式就很方便了
这段代码可以从命令行接收一个文件名, 也可以从stdin直接读.
python代码传进去, function名字在一个列表里传出来
顺带提一下, 你的题目说的是这个function接收一个TextIOWrapper, 所以你不应该再open
Python里类的成员函数至少有一个参数,且第一个参数一定是self。
而且所有成员变量也必须用self.xxx的形式调用。
简单的修改如下:
class Openfile:
filepath = ''
def chooseit(self, filepath):
self.filepath = filepath
opent = open(filepath,'r')
line = opent.readline()
print line
opent.close()
f = Openfile()
f.chooseit("E:\\a.txt")
def和__init__之间要空格
你__init__代码下面的函数定义都用对了,照着下面的格式就行。
符号错误。
Python def class if elif for while 等语句末尾没有加上“: ”关键符号,检查对应 def class if elif for while语句结尾是否少了关键符号“ : ”。
正确代码:
class Num(object):
# 这 def 语句结尾添加缺少的 :
def __init__(self, num):
self.num = num
def __abs__(self):
# 缩进不正确
return abs(self.num) num = Num(-10)
print(abs(num))
扩展资料:
忘记在 if , elif , else , for , while , class ,def 声明末尾添加 “:”(导致 “SyntaxError :invalid syntax”)
1、该错误将发生在类似如下代码中:12if spam== 42 print('Hello!')
使用 = 而不是 ==(导致“SyntaxError: invalid syntax”)
= 是赋值操作符而 == 是等于比较操作。
2、该错误发生在如下代码中:if spam= 42: print('Hello!')
错误的使用缩进量(导致“IndentationError:unexpected indent”、“IndentationError:unindent does not match any outer indetation level”以及“IndentationError:expected an indented block”)
你的语法有错误。内置函数power(x, y[, z])中的x和y是必选参数,z是可选参数;如果使用了参数z,中括号必须去掉,即power(x,y,z),其结果是x的y次方再对z求余数,但是这种方式比power(x,y) % z的执行效率要高。你可以使用power(2, 4)或者power(2,4,3)。 power(2,4)=2的4次方=16; power(2,4,3)=2的4次方再模上3=16 % 3=1。
python函数内b=b+1报错是因写错代码。在Python中,所有代码都是通过正确的空格排列的。无多出来空格或缺少空格,整个代码都不会运行,仅返回一个错误函数。Python代码遵循PEP8空白规范,每一级缩进使用4个空格,便不会报错。