python导入csv文件出现SyntaxError问题分析


Posted in Python onDecember 15, 2017

背景

np.loadtxt()用于从文本加载数据。

文本文件中的每一行必须含有相同的数据。

***

loadtxt(fname,dtype=<class'float'>,comments='#',delimiter=None,converters=None,skiprows=0,usecols=None,unpack=False,ndmin=0)

fname要读取的文件、文件名、或生成器。

dtype数据类型,默认float。

comments注释。

delimiter分隔符,默认是空格。

skiprows跳过前几行读取,默认是0,必须是int整型。

usecols:要读取哪些列,0是第一列。例如,usecols=(1,4,5)将提取第2,第5和第6列。默认读取所有列。

unpack如果为True,将分列读取。

问题

今天在ipython中读取文件时,

代码为:

import numpy as np
x = np.loadtxt('C:\Users\sunshine\Desktop\scjym_3yNp3Gj\源数据\000001.csv',delimiter= ',',skiprows=(1),usecols= (1,4,6),unpack= False)

出现下面的错误:

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

编码错误,经搜索问题,发现采用如下解决方案:

r'C:\Users\expoperialed\Desktop\Python'
'C:\\Users\\expoperialed\\Desktop\\Python'
'C:/Users/expoperialed/Desktop/Python'

看到这里我就明白自己错在哪儿了。

书写字符串有几个需要注意的地方:

1.长字符串

非常长的字符串,跨多行时,可以使用三个引号代替普通引号。

即:

print('''This is a very long string.
it will continue.
and it's not over yet.
''hello,world''
still here.'''

可以注意到,使用这种方式时,字符串中可以同时使用单引号和双引号

2.原始字符串

print(r'c:\nwhere')

反斜线有特殊的作用,它会转义,可以帮助我们在字符串中加入单引号和双引号等不能直接加入的内容。

\n,换行符,可以存放于字符串中。

以上代码块中,很显然我们是想要一个路径,而如果不使用原始字符串,我们就会得到

c:where。

对,为了防止这种情况,我们还可以使用反斜线进行转义,但是如果这个路径很长,就像本文的路径:

C:\\\Users\\\sunshine\\\Desktop\\\scjym_3yNp3Gj\\\源数据\\\000001.csv

使用双斜线,就会很麻烦。

这时,我们就可以用原始字符串。

原始字符串以r开头。

原始字符串结尾不能是反斜线。

如要结尾用反斜线,print(r'C:\Programfiles\foo\bar''\\')C:\Programfiles\foo\bar\

在常规python字符串中,\U字符组合表示扩展的Unicode代码点转义。

因此这里出现了错误。

python导入csv文件的三种方法

#原始的方式
lines = [line.split(',') for line in open('iris.csv')]
df = [[float(x) for x in line[:4]] for line in lines[1:]]
#使用numpy包
import numpy as np
lines = np.loadtxt('iris.csv',delimiter=',',dtype='str')
df = lines[1:,:4].astype('float')
#使用pandas包
import pandas as pd
df = pd.read_csv('iris.csv')
df=df.ix[:,:4]

这三种方法中最后一种最简单,不过花费时间比较长一点,第一种最麻烦,不过用时最短。这个可以通过ipython中的magic函数%%timeit来看。

总结

以上就是本文关于python导入csv文件出现SyntaxError问题分析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python Mysql数据库操作 Perl操作Mysql数据库
Jan 12 Python
Python、Javascript中的闭包比较
Feb 04 Python
低版本中Python除法运算小技巧
Apr 05 Python
Windows下安装python2和python3多版本教程
Mar 30 Python
python寻找list中最大值、最小值并返回其所在位置的方法
Jun 27 Python
python 实现读取一个excel多个sheet表并合并的方法
Feb 12 Python
python多进程下实现日志记录按时间分割
Jul 22 Python
Django分页功能的实现代码详解
Jul 29 Python
关于Python3 lambda函数的深入浅出
Nov 27 Python
python爬虫基础知识点整理
Jun 02 Python
matplotlib之pyplot模块之标题(title()和suptitle())
Feb 22 Python
pytorch 使用半精度模型部署的操作
May 24 Python
python matplotlib中文显示参数设置解析
Dec 15 #Python
MAC中PyCharm设置python3解释器
Dec 15 #Python
Python通过matplotlib画双层饼图及环形图简单示例
Dec 15 #Python
python绘制双柱形图代码实例
Dec 14 #Python
Python实现一个Git日志统计分析的小工具
Dec 14 #Python
用matplotlib画等高线图详解
Dec 14 #Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
Dec 14 #Python
You might like
浅析php与数据库代码开发规范
2013/08/08 PHP
laravel容器延迟加载以及auth扩展详解
2015/03/02 PHP
android上传图片到PHP的过程详解
2015/08/03 PHP
Thinkphp整合阿里云OSS图片上传实例代码
2019/04/28 PHP
NiftyCube——轻松实现圆角边框
2007/02/20 Javascript
jquery 可拖拽的窗体控件实现代码
2010/03/21 Javascript
IE中jquery.form中ajax提交没反应解决方法分享
2012/09/11 Javascript
jquery(hide方法)隐藏指定元素实例
2013/11/11 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
js构造函数、索引数组和属性的实现方式和使用
2014/11/16 Javascript
Javascript基础教程之定义和调用函数
2015/01/18 Javascript
Jquery实现纵向横向菜单
2016/01/24 Javascript
js实时获取窗口大小变化的实例代码
2016/11/18 Javascript
BootStrap Table 获取同行不同列元素的方法
2016/12/19 Javascript
基于js原生和ajax的get和post方法以及jsonp的原生写法实例
2017/10/16 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
JS装饰器函数用法总结
2018/04/21 Javascript
angular 未登录状态拦截路由跳转的方法
2018/10/09 Javascript
微信小程序实现日期格式化和倒计时
2020/11/01 Javascript
jQuery实现小火箭返回顶部特效
2020/02/03 jQuery
jQuery 实现扁平式小清新导航
2020/07/07 jQuery
Js实现粘贴上传图片的原理及示例
2020/12/09 Javascript
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
Python 3.8中实现functools.cached_property功能
2019/05/29 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
2019/06/19 Python
Python音频操作工具PyAudio上手教程详解
2019/06/26 Python
Python用5行代码实现批量抠图的示例代码
2020/04/14 Python
python中 _、__、__xx__()区别及使用场景
2020/06/30 Python
CSS3 渐变(Gradients)之CSS3 径向渐变
2016/07/08 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
2012/12/09 HTML / CSS
Ever New美国:澳大利亚领先的女装时尚品牌
2019/11/28 全球购物
护理职业生涯规划书
2014/01/24 职场文书
文科生自我鉴定
2014/02/15 职场文书
关于建议书的格式范文
2014/05/20 职场文书
2015年检验科工作总结
2015/04/27 职场文书
2015年学校财务工作总结
2015/05/19 职场文书