【Error】IOError: [Errno 22] invalid mode ('wb') or filename

错误描述:

IOError: [Errno 22] invalid mode ('wb') or filename: 'C:\Users\Viral Patel\Documents\GitHub\3DPhotovoltaics\Data_Output\Simulation_Data\Raw_Data\Raw_Simulation_Data_2014-03-24 17:21:20.545000.csv'

解决方案:

这个主要是文件名、路径中含有反转字符,具体请参照Naming Files, Paths, and Namespaces,路径中不要包含以下字符:

  • < (less than)
  • > (greater than)
  • : (colon)
  • " (double quote)
  • / (forward slash)
  • \ (backslash)
  • | (vertical bar or pipe)
  • ? (question mark)
  • * (asterisk)

两种解决方式:

  • 使用原生字符串

    r'path\regionlog.txt'

  • 去掉这些字符

    coding: utf-8

    import re

    str1 = u'###现在开始,PM2.5小#米4 已经降到1299元! http://t.cn/RAJVndT'
    str2 = u'【设计之美,美到不可%%思议】彩虹五号\n电池,采用\日本Maxell 电池核芯,电量充足,而且是碱性环保电池,无汞无镉,每盒十节才 9.9元,送收纳盒。小米网现货 http://t.cn/RzlIR1U'
    str3 = u'【小米电视3 新增55英寸,仅3999元】原装LG/三星屏真4K,全金属机身薄至9.9mm, 旗舰处理器,配MEMC运动图像补偿芯片,标配独立音响。【小米盒子3】全新升级64位4K网络机顶盒,标配小米蓝牙语音体感遥控,仅299元。'
    str4 = u'小米生态链企业Ninebot CEO@高禄峰 告诉我,九号平衡车,截至现在预约量已突破40万台。大家别忘了明天首发,现在预约 http://t.cn/RzlIR1U'
    str5 = u'小米优惠多得数不清,力度也是空前的,我请同事整理一份完整的优惠清单供大家参考……'
    str6 = u'@李学凌 试玩九号平衡车第一次就搞定他说广告词应该改成零秒上手挤眼'
    str7 = u'原创】国产 5 P 聚会,人齐了就正式开始吧~(第二部)【37P】'

    pattern = re.compile('(<a href=\S+)|(@\S+)')

    content = weibo['content'].replace('http://', '!#$%&')\

    .split('//')[0].replace('!#$%&', 'http://')\

    .strip()

    content = pattern.sub('', weibo['content']).split('//', 1)[0].strip()

    punct = set(u''':!),:;?]}¢'"、。〉》」』】〕〗〞︰︱︳/\ ﹐、#$%&
    ﹔﹕﹖﹗﹚﹜﹞!),:;?|}︴︶︸︺︼︾﹀﹂﹄﹏、~¢
    々‖•·ˇˉ―--′’”([{£¥'"‵〈《「『【〔〖([{£¥〝︵︷︹︻
    ︽︿﹁﹃﹙﹛﹝({“‘-—_…''')

    对str/unicode

    filterpunt = lambda s: ''.join(filter(lambda x: x not in punct, s))
    #print pattern.sub('', str6)
    print filterpunt(pattern.sub('', str2)).strip()
    print filterpunt(str7).strip()


参考###

posted @ 2016-04-07 17:16  Chris*Chen  阅读(7764)  评论(0)    收藏  举报