彭莉
摘要:Python对初级程序员而言,是一种伟大的语言。从简单的文字处理到WWW浏览器再到游戏。
关键词:python;程序;设计
1 前言
Python是由Guido van Rossum在八十年代末和九十年代初,在荷蘭国家数学和计算机科学研究所设计出来的。Python是初学者的语言:Python对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到WWW浏览器再到游戏。
2 Python处理CSV文件和JSON数据的步骤
2.1 处理CSV文件步骤
CSV文件是简单的,缺少Excel电子表格的许多功能。例如,CSV文件中:值没有类型,所有东西都是字符串;没有字体大小或颜色的设置;没有多个工作表;不能指定单元格的宽度和高度;不能合并单元格;不能嵌入图像或图表。
找出当前工作目录中的所有CSV文件:读取每个文件的全部内容;跳过第一行,将内容写入一个新的CSV文件。
在代码层面上,这意味着该程序需要做到以下几点:循环遍历从os.listdir ()得到的文件列表,跳过非CSV文件;创建一个CSV Reader对象,读取该文件的内容,利用line num属性确定要跳过哪一行;创建一个CSV Writer对象,将读人的数据写入新文件。
2.2 处理JSON数据步骤
Python的json模块处理了JSON数据字符串和Python值之间转换的所有细节,得到了json.loads()和json.dumps()函数。JSON不能存储每一种Python值,它只能包含以下数据类型的值:字符串、整型、浮点型、布尔型、列表、字典和NoneType。
JSON不能表示Python特有的对象,如File对象、CSV Reader或Writer对象、Regex
对象或Selenium WebElement对象。
3 代码实现
3.1 处理csv文件代码
import csv,os
os.makedirs('headerRemoved,exist ok=True)
for csvFilenarne in os.listdir('.'):
if not csvFilename.endswtth('.csv'):
continue
prtnt('Removtng header from'+csvFtlename+'...')
csvRows=[]
csvFileObj=open(csvFilename)
readerObj=csv.reader(csvFileObj)
for row in readerObj:
if readerObj.line_num==1:
continue#skip first row
csvRows.append(row)
csvFtleObj.close()
csvFileObj=open(os.path.join('headerRe-moved,csvFtlename),'w',newline=")
csvWriter=csv.writer(csvFileObj)
for row in csvRows:
csvWriter.writerow(row)
csvFtleObj.close()
3.2 处理json数据代码
import json,requests,sys
if len(sys.argv)<2:
print('Usage:qutckWeather.py location')
sys.exit()
location=''.join(sys.argv[1:])
url='http://apt.openweathermap.org/data/2.5/forecast/ daily?q=%s&cnt=3'%(location)
response=requests.get(url)
response.raise_for_status()
weatherData=json.loads(response.text)
w=weatherDatar['list']
print('Current weather in%s:'%(location))
print(w[0]['weather'][0]['main'],'-',w[0]['weather'][0]['description'])
print()
print('Tomoxrow:')
print(w[1]['weather'][0]['main'],'-',w[1]['weather'][0]['description'])
print()
print('Day after tomorrow:')
print(w[2]['weather'][0]['main'],'-',w[2]['weather'][0]['description'])
4 小结
CSV和JSON是常见的纯文本格式,用于保存数据。它们很容易被程序解析,同时仍然让人可读,所以它们经常被用作简单的电子表格或网络应用程序的数据。csv和json模块大大简化了读取和写入CSV和JSUN文件的过程。
一个常见的任务是接受多种格式的数据,解析它,并获得需要的特定信息。这些任务往往非常特别,商业软件并不是最有帮助的。通过编写自己的脚本,可以让计算机处理大量以这些格式呈现的数据
参考文献
[1]罗霄,任勇,山秀明.基于Python的混合语言编程及其实现[J].计算机应用与软件,2004,(12).
[2]马珊珊.python在日常工作处理中的应用——以员工福利采购统计为例[J].电脑知识与技术,2018,(01).