欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python導(dǎo)入csv文件出現(xiàn)SyntaxError問(wèn)題分析

 更新時(shí)間:2017年12月15日 09:37:14   作者:我的前進(jìn)日志  
這篇文章主要介紹了python導(dǎo)入csv文件出現(xiàn)SyntaxError問(wèn)題分析,同時(shí)涉及python導(dǎo)入csv文件的三種方法,具有一定借鑒價(jià)值,需要的朋友可以參考下。

背景

np.loadtxt()用于從文本加載數(shù)據(jù)。

文本文件中的每一行必須含有相同的數(shù)據(jù)。

***

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

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

dtype數(shù)據(jù)類(lèi)型,默認(rèn)float。

comments注釋。

delimiter分隔符,默認(rèn)是空格。

skiprows跳過(guò)前幾行讀取,默認(rèn)是0,必須是int整型。

usecols:要讀取哪些列,0是第一列。例如,usecols=(1,4,5)將提取第2,第5和第6列。默認(rèn)讀取所有列。

unpack如果為True,將分列讀取。

問(wèn)題

今天在ipython中讀取文件時(shí),

代碼為:

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

出現(xiàn)下面的錯(cuò)誤:

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

編碼錯(cuò)誤,經(jīng)搜索問(wèn)題,發(fā)現(xiàn)采用如下解決方案:

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

看到這里我就明白自己錯(cuò)在哪兒了。

書(shū)寫(xiě)字符串有幾個(gè)需要注意的地方:

1.長(zhǎng)字符串

非常長(zhǎng)的字符串,跨多行時(shí),可以使用三個(gè)引號(hào)代替普通引號(hào)。

即:

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

可以注意到,使用這種方式時(shí),字符串中可以同時(shí)使用單引號(hào)和雙引號(hào)

2.原始字符串

print(r'c:\nwhere')

反斜線有特殊的作用,它會(huì)轉(zhuǎn)義,可以幫助我們?cè)谧址屑尤雴我?hào)和雙引號(hào)等不能直接加入的內(nèi)容。

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

以上代碼塊中,很顯然我們是想要一個(gè)路徑,而如果不使用原始字符串,我們就會(huì)得到

c:where。

對(duì),為了防止這種情況,我們還可以使用反斜線進(jìn)行轉(zhuǎn)義,但是如果這個(gè)路徑很長(zhǎng),就像本文的路徑:

C:\\\Users\\\sunshine\\\Desktop\\\scjym_3yNp3Gj\\\源數(shù)據(jù)\\\000001.csv

使用雙斜線,就會(huì)很麻煩。

這時(shí),我們就可以用原始字符串。

原始字符串以r開(kāi)頭。

原始字符串結(jié)尾不能是反斜線。

如要結(jié)尾用反斜線,print(r'C:\Programfiles\foo\bar''\\')C:\Programfiles\foo\bar\

在常規(guī)python字符串中,\U字符組合表示擴(kuò)展的Unicode代碼點(diǎn)轉(zhuǎn)義。

因此這里出現(xiàn)了錯(cuò)誤。

python導(dǎo)入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]

這三種方法中最后一種最簡(jiǎn)單,不過(guò)花費(fèi)時(shí)間比較長(zhǎng)一點(diǎn),第一種最麻煩,不過(guò)用時(shí)最短。這個(gè)可以通過(guò)ipython中的magic函數(shù)%%timeit來(lái)看。

總結(jié)

以上就是本文關(guān)于python導(dǎo)入csv文件出現(xiàn)SyntaxError問(wèn)題分析的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專(zhuān)題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • pyCharm 設(shè)置調(diào)試輸出窗口中文顯示方式(字符碼轉(zhuǎn)換)

    pyCharm 設(shè)置調(diào)試輸出窗口中文顯示方式(字符碼轉(zhuǎn)換)

    這篇文章主要介紹了pyCharm 設(shè)置調(diào)試輸出窗口中文顯示方式(字符碼轉(zhuǎn)換),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • python中68個(gè)內(nèi)置函數(shù)的總結(jié)與介紹

    python中68個(gè)內(nèi)置函數(shù)的總結(jié)與介紹

    這篇文章主要介紹了python中68個(gè)內(nèi)置函數(shù)的總結(jié)與介紹,需要的朋友可以參考下
    2020-02-02
  • selenium學(xué)習(xí)教程之定位以及切換frame(iframe)

    selenium學(xué)習(xí)教程之定位以及切換frame(iframe)

    這篇文章主要給大家介紹了關(guān)于selenium學(xué)習(xí)教程之定位以及切換frame(iframe)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python實(shí)現(xiàn)文件按照日期命名的方法

    Python實(shí)現(xiàn)文件按照日期命名的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)文件按照日期命名的方法,涉及Python針對(duì)文件的遍歷、讀寫(xiě)及時(shí)間操作相關(guān)技巧,需要的朋友可以參考下
    2015-07-07
  • 關(guān)于networkx返回圖的鄰接矩陣問(wèn)題

    關(guān)于networkx返回圖的鄰接矩陣問(wèn)題

    這篇文章主要介紹了關(guān)于networkx返回圖的鄰接矩陣問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 詳解Selenium中元素定位方式

    詳解Selenium中元素定位方式

    測(cè)試對(duì)象的定位和操作是我們利用 selenium 編寫(xiě)自動(dòng)化腳本和 webdriver 的核心內(nèi)容。本文我們就來(lái)學(xué)習(xí)一下常用的元素定位方法有哪些吧
    2022-06-06
  • Python爬蟲(chóng)使用實(shí)例wallpaper問(wèn)題記錄

    Python爬蟲(chóng)使用實(shí)例wallpaper問(wèn)題記錄

    本文介紹解決中文亂碼的方法,以及Python爬蟲(chóng)處理數(shù)據(jù)、圖片URL的技巧,包括使用正則表達(dá)式處理字符串、URL替換等,還涉及單線程與多線程的應(yīng)用場(chǎng)景,如電腦壁紙和手機(jī)壁紙爬取,適合進(jìn)行Web數(shù)據(jù)抓取和處理的開(kāi)發(fā)者參考
    2024-09-09
  • Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例

    Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例

    百度AI功能還是很強(qiáng)大的,百度AI開(kāi)放平臺(tái)真的是測(cè)試接口的天堂,免費(fèi)接口很多,當(dāng)然有量的限制,但個(gè)人使用是完全夠用的,下面這篇文章主要給大家介紹了關(guān)于Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • Python設(shè)計(jì)模式之門(mén)面模式簡(jiǎn)單示例

    Python設(shè)計(jì)模式之門(mén)面模式簡(jiǎn)單示例

    這篇文章主要介紹了Python設(shè)計(jì)模式之門(mén)面模式,簡(jiǎn)單描述了門(mén)面模式的概念、原理,并結(jié)合實(shí)例形式給出了Python定義與使用門(mén)面模式的具體操作技巧,需要的朋友可以參考下
    2018-01-01
  • python利用socket實(shí)現(xiàn)客戶端和服務(wù)端之間進(jìn)行通信

    python利用socket實(shí)現(xiàn)客戶端和服務(wù)端之間進(jìn)行通信

    這篇文章主要介紹了python實(shí)現(xiàn)客戶端和服務(wù)端之間進(jìn)行通信,文章通過(guò)python利用socket展開(kāi)詳情介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-05-05

最新評(píng)論