24小时热门版块排行榜    

查看: 1361  |  回复: 4

cxycxu

新虫 (初入文坛)

[求助] 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()
我根据他的改的,但是感觉好像哪里都不对,,作为新手小白,知道很令人无语,所以求大神们帮帮忙。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)


jjdg: 金币+1, 感谢参与 2017-06-28 21:29:14
最好能够提供一个简单的 res 文件,要不然 res 格式有太多种了,不知道你说的是哪种,也就没法看是否能帮上忙
2楼2017-06-28 05:40:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cxycxu

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by somomo91 at 2017-06-28 05:40:32
最好能够提供一个简单的 res 文件,要不然 res 格式有太多种了,不知道你说的是哪种,也就没法看是否能帮上忙

作为一个新手,,我从最简单的开始学起了,现在出现个问题 ,我按照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
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjdg

版主 (知名作家)

优秀版主

python2.x与3.x的版本有差异,代码不一定通用
努力学习!以正当途径!获得需要的知识!
4楼2017-06-30 21:58:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖

★ ★
jjdg: 金币+2, 感谢说明 2017-07-01 10:20:51
引用回帖:
3楼: Originally posted by cxycxu at 2017-06-30 17:14:51
作为一个新手,,我从最简单的开始学起了,现在出现个问题 ,我按照python核心编程书上的代码在python2.7输入代码:
class FooClass(object):
    version=0.1
    def _init_(self,nm='John Doe'):
        s ...

这个不是Python 版本的问题,而是。。。
关键是你少打了几个下划线
CODE:
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

5楼2017-07-01 01:34:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 cxycxu 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 344求调剂 +6 knight344 2026-03-16 7/350 2026-03-18 20:13 by walc
[考研] 0703化学 305求调剂 +3 FY_yy 2026-03-14 3/150 2026-03-18 19:40 by macy2011
[考研] 一志愿中国海洋大学,生物学,301分,求调剂 +4 1孙悟空 2026-03-17 4/200 2026-03-18 17:59 by fivewind
[考研] 一志愿武理材料305分求调剂 +5 想上岸的鲤鱼 2026-03-18 6/300 2026-03-18 17:53 by 无际的草原
[考研] 材料与化工一志愿南昌大学327求调剂推荐 +8 Ncdx123456 2026-03-13 9/450 2026-03-18 14:40 by haxia
[考研] 材料专硕274一志愿陕西师范大学求调剂 +6 薛云鹏 2026-03-13 6/300 2026-03-18 14:14 by 脱颖而出
[考研] 293求调剂 +11 zjl的号 2026-03-16 16/800 2026-03-18 08:10 by zhukairuo
[考研] 275求调剂 +4 太阳花天天开心 2026-03-16 4/200 2026-03-17 10:53 by 功夫疯狂
[考研] 274求调剂 +5 时间点 2026-03-13 5/250 2026-03-17 07:34 by 热情沙漠
[考研] [导师推荐]西南科技大学国防/材料导师推荐 +3 尖角小荷 2026-03-16 6/300 2026-03-16 23:21 by 尖角小荷
[考研] 药学383 求调剂 +3 药学chy 2026-03-15 4/200 2026-03-16 20:51 by 元子^0^
[考研] 304求调剂 +5 素年祭语 2026-03-15 5/250 2026-03-16 17:00 by 我的船我的海
[考研] 289求调剂 +4 这么名字咋样 2026-03-14 6/300 2026-03-14 18:58 by userper
[考研] 学硕285求调剂 +13 Wisjxn 2026-03-12 46/2300 2026-03-14 10:33 by JourneyLucky
[考研] 330求调剂 +3 ?酱给调剂跪了 2026-03-13 3/150 2026-03-14 10:13 by JourneyLucky
[考研] 求调剂 +3 程雨杭 2026-03-12 3/150 2026-03-13 15:06 by JourneyLucky
[考研] 328化工专硕求调剂 +4 。,。,。,。i 2026-03-12 4/200 2026-03-13 14:44 by JourneyLucky
[考研] 085600材料与化工 309分请求调剂 +7 dtdxzxx 2026-03-12 8/400 2026-03-13 14:43 by jxchenghu
[考研] 308求调剂 +3 是Lupa啊 2026-03-12 3/150 2026-03-13 14:30 by 求调剂zz
[考研] 081200-11408-276学硕求调剂 +3 崔wj 2026-03-12 4/200 2026-03-12 19:33 by 求调剂zz
信息提示
请填处理意见