| 查看: 1346 | 回复: 4 | ||
[求助]
Perl转换python,读取文件以及定义函数, 已有1人参与
|
|
师傅给了一个perl文件处理res文件,让我转换成python文件处理,对于res文件,我不知道怎么用python读取,想要实现每一组数对应一个波形,对有大于0.5的大于6个点大于1的有3个点的波形并且波形后有bath路径的记一个,最后记总数,,#!/usr/bin/python #_*_coding:UTF-8_*_ #if argv != 5 : #return #($INPUT,$THRES_PEAK,$SMOOTH_WIN,$peak) = @ARGV; def argv(self): (INPUT,THRES_PEAK,peak,THRES,SMOOTH_WIN)= argv file_object = open('US_HI_BIX_PC_TC_CarDowntown_5dB.res',r) try : f = file_object.read( ) THRES = 4.5 total = 0 recall = 0 work = 0 on_off = 0 count_down=0 count_down_path=0 line= file_object.readline() line=line.strip('\n') while line : total+=1 #print "$content\n"; if count_down > 0 : count_down+=1 if count_down_path > 0 : count_down_path-=1 as="bt_" if as in line : if count_down > 0 : recall+=1 count_down=0 #print "=================================$total\n"; count_down_path = 15 else : val = line.split() inv_score = val[0] def inv_score in_score = inv_score if in_score >= THRES & on_off == 0 : work = 1 if in_score >= THRES_PEAK : pcount = 1 else : pcount = 0 st = st_time on_off = 1 elif in_score >= THRES && on_off == 1 : work+=1 if in_score >= THRES_PEAK : pcount+=1 elif in_score < THRES && on_off == 1 : ed = last_ed if work >= SMOOTH_WIN && pcount >= peak && count_down_path > 0 : recall+=1 # print "===============================$total\n"; count_down_path = 0 elif work >= SMOOTH_WIN & pcount >= peak : #$recall+=1 count_down=7 print OUT "$total\t" print OUT "$pcount\n" work = 0 on_off = 0 last_st = st_time last_ed = ed_time if work >= SMOOTH_WIN & pcount >= peak : recall+=1 print "recall\n" finally: if f: f.close() 我根据他的改的,但是感觉好像哪里都不对,,作为新手小白,知道很令人无语,所以求大神们帮帮忙。 |
» 猜你喜欢
西南交通大学国家级人才团队2026年博士研究生招生(考核制)—机械、材料、力学方向
已经有3人回复
救命帖
已经有6人回复
存款400万可以在学校里躺平吗
已经有37人回复
英文综述是否需要润色及查重
已经有5人回复
限项规定
已经有5人回复
为什么nbs上溴 没有产物点出现呢
已经有9人回复
招博士
已经有3人回复
最失望的一年
已经有18人回复
2楼2017-06-28 05:40:32
|
作为一个新手,,我从最简单的开始学起了,现在出现个问题 ,我按照python核心编程书上的代码在python2.7输入代码: class FooClass(object): version=0.1 def _init_(self,nm='John Doe'): self.name=nm print ('created a class instance for ',nm) def showname(self): print ('your name is ',self.name) print ('my name is',self._class_._name_) def showver(self): print(self.version) def addMe2Me(self,x): return x+x 然后按照书上调用函数,fool =FooClass();fool.showname()会报错:AttributeError: 'FooClass' object has no attribute 'name',这是为什么啊 |
3楼2017-06-30 17:14:51
jjdg
版主 (知名作家)
- 程序强帖: 9
- 应助: 223 (大学生)
- 贵宾: 3.926
- 金币: 51003.4
- 红花: 238
- 帖子: 7227
- 在线: 474.2小时
- 虫号: 27000
- 注册: 2003-10-21
- 专业: 药物代谢与药物动力学
- 管辖: 程序语言

4楼2017-06-30 21:58:00
5楼2017-07-01 01:34:57













回复此楼
