真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python3如何讀取csv文件任意行列-創(chuàng)新互聯(lián)

這篇文章主要介紹python3如何讀取csv文件任意行列,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)于2013年開(kāi)始,是專(zhuān)業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元行唐做網(wǎng)站,已為上家服務(wù),為行唐各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話(huà):18982081108

讀取每一行

reader = csv.reader(f) 此時(shí)reader返回的值是csv文件中每行的列表,將每行讀取的值作為列表返回

#讀取每一行
filename='D:\\file_information1.csv'
import csv

with open(filename,newline = '',encoding = 'utf-8') as f:   #參數(shù)encoding = 'utf-8'防止出現(xiàn)亂碼
  reader = csv.reader(f)   #使用csv的reader()方法,創(chuàng)建一個(gè)reader對(duì)象 csv.reader()讀取結(jié)果是列表
  for row in reader: #遍歷reader對(duì)象的每一行
    print(row)

如何往csv格式文件寫(xiě)入數(shù)據(jù)

1.write()函數(shù)寫(xiě)入文本文件的也是字符串類(lèi)型。

2.在'w'和'a'模式下,如果你打開(kāi)的文件不存在,那么open()函數(shù)會(huì)自動(dòng)幫你創(chuàng)建一個(gè)

3.'w'寫(xiě)入模式會(huì)給你暴力清空掉文件,然后再給你寫(xiě)入。如果你只想增加?xùn)|西,而不想完全覆蓋掉原文件的話(huà),就要使用'a'模式,表示append,你學(xué)過(guò),它是追加的意思。

file1 = open('D:\\new\\abc.txt','a',encoding='utf-8')
file1.write('張無(wú)忌\n')
file1.write('宋青書(shū)\n')
file1.close()

enumerate()

enumerate() 函數(shù)用于將一個(gè)可遍歷的數(shù)據(jù)對(duì)象(如列表、元組或字符串)組合為一個(gè)索引序列,同時(shí)列出數(shù)據(jù)和數(shù)據(jù)下標(biāo) ,一般用在 for 循環(huán)當(dāng)

以下是 enumerate() 方法的語(yǔ)法: enumerate(sequence, [start=0])

  • sequence -- 一個(gè)序列、迭代器或其他支持迭代對(duì)象。

  • start -- 下標(biāo)起始位置。

返回 enumerate(枚舉) 對(duì)象

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))       # [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
print(list(enumerate(seasons, start=1)) ) # [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
# 普通for循環(huán):
i = 0
seq = ['one', 'two', 'three']
for element in seq:
  print( i, seq[i])
  i +=1
'''
one
two
three
'''
# for 循環(huán)使用 enumerate
seq1 = ['one', 'two', 'three']
for j, element in enumerate(seq1):
  print (j, element)
'''
one
two
three
'''

獲取文件的編碼方式

import chardet
def get_file_code(file_path):
  with open(file_path, 'rb') as f:
    data = f.read()
    print('獲取到的CSV文件編碼為:%s' % (chardet.detect(data)['encoding']))
    return chardet.detect(data)['encoding']

file_path = r'D:\\file_information1.csv'
get_file_code(file_path)

判斷文件的編碼方式

f = open("D:\\file_information1.csv","rb")#二進(jìn)制格式讀文件
i = 0
while True:
  print(i)
  line = f.readline()
  if not line:
    break
  else:
    try:
#       print(line)
#       print(line.decode('utf8'))
      line.decode('utf8')
      #為了暴露出錯(cuò)誤,最好此處不print
    except:
      print(str(line))
  i += 1

讀取首行

filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f: #自行先判斷文件的編碼方式
  read=f.readlines()
  for index,info in enumerate(read):
    if index ==0:  #這里判斷
      #這里輸出的是字符串類(lèi)型
      print(info)

讀取首行之外的所有行

filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=f.readlines()
  for index,info in enumerate(read):
    if index !=0:  #這里判斷
      print(info)

讀取前10行

filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=f.readlines()
  for index,info in enumerate(read):
    if index <10: #這里為索引,是 int 整形
      print(index,info)

讀取任意行,可根據(jù)index索引

import csv
filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=f.readlines()
  for index,info in enumerate(read):
    print(index) #自己根據(jù)index的數(shù)字判斷

讀取第一和第二列

import csv
filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=csv.reader(f)
  for index,info in enumerate(read):
      #這里輸出的是列表類(lèi)型
      print(info[:2])  #[:2]代表的是讀取第0列和第1列 ,第2列不包括

讀取除首行之外的第一,第二列

import csv
filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=csv.reader(f)
  for index,info in enumerate(read):
    if index!=0:  #這里加判斷
      print(info[:2])

讀取最后兩列

import csv
filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=csv.reader(f)
  for index,info in enumerate(read):
      print(info[-2:])

讀第一行的第三列

filename='D:\\file_information1.csv'
with open(filename,'r',encoding='utf-8')as f:
  read=csv.reader(f)
  for index,info in enumerate(read):
    if index==0:
      print(info[2:3])

以上是“python3如何讀取csv文件任意行列”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網(wǎng)站名稱(chēng):python3如何讀取csv文件任意行列-創(chuàng)新互聯(lián)
鏈接分享:http://weahome.cn/article/hesij.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部