• 【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
      egionlog.txt'
      
    • 去掉这些字符

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

    参考###

  • 相关阅读:
    Windows 7任务栏图标特别说明
    Linux下send函数 Broken pipe错误的解决方法
    C++实现一个简单的异常日志记录类
    C++写日志操作
    VC中设置打开文件的权限为管理员权限
    MFC 注册热键
    监控Tomcat状态及配置AIO(APR)模式
    Tomcat管理功能使用及WEB站点部署
    Tomcat多实例配置
    基于端口主机的虚拟主机
  • 原文地址:https://www.cnblogs.com/nju2014/p/5364453.html
Copyright © 2020-2023  润新知