前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >初识Python3

初识Python3

作者头像
用户2146693
发布2019-08-08 15:01:18
7740
发布2019-08-08 15:01:18
举报

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

简介

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。

像Perl语言一样, Python 源代码同样遵循 GPL(GNU General Public License)协议。

Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。

环境安装配置,请参考基础服务系列-Centos7 安装Anaconda

本文记录初识Python3中的点点滴滴。

入门

一般情况下,熟悉一门编程语言的话,对比着学习另外一种会轻松很多。

Python的特点是,入门容易,精通难。

基础的语法、数据类型,参考Python3 基础语法

语法练习,可以使用在线笔记Jupyter。

也可以直接注册一些在线的。

  • 阿里云天池:阿里大数据平台,会有一些比赛、数据集、AI学习路线图。
  • Azure notebook:微软提供的在线Jupyter服务。
  • Cocalc:一个科学计算平台。
  • Kaggle :一个AI比赛平台,该平台有一个在线版的jupyter运行环境,提供免费的K80 GPU。
  • Colab:谷歌提供的免费在线云计算平台。

常用类库

文件操作

CSV

内置csv module

CSV File Reading and Writing 写文件。。。

import csv

headers=['date','open','high','low','close','volume','name','stockcode']
train_csv="data.csv"
result=((datetime.date(1990, 12, 19), 185.3, 185.3, 185.3, 185.3, 5000, '延中实业', '600601'), (datetime.date(1990, 12, 24))

with open(train_csv,'w') as f:
    f_csv=csv.writer(f)
    f_csv.writerow(headers)
    f_csv.writerows(result)
print('write train csv success')

读文件。。。

import csv

data_file="test.csv"
with open(data_file) as f:
    data=csv.reader(f)
    header=next(data)
    print(header)
    for row in data:
        print(row)
pandas

写文件。。。

import pandas as pd

headers=['date','open','high','low','close','volume','name','stockcode']

data=((datetime.date(1990, 12, 19), 185.3, 185.3, 185.3, 185.3, 5000, '延中实业', '600601'), (datetime.date(1990, 12, 24))
file_name='test.csv'
save=pd.DataFrame(data,headers)
save.to_csv(file_name)

读文件。。。

import pandas as pd
train_csv="train.csv"

data=pd.read_csv(train_csv)
print("read success",data)

DB操作

mysqlclient

由于 MySQL-python 年久失修,后来出现了它的 Fork 版本 mysqlclient,完全兼容 MySQLdb,同时支持 Python3.x,是 Django ORM的依赖工具,如果你想使用原生 SQL 来操作数据库,那么推荐此驱动。安装方式和 MySQLdb 是一样的,Windows 可以在 https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient 网站找到 对应版本的 whl 包下载安装。

PyMySQL

PyMySQL 是纯 Python 实现的驱动,速度上比不上 MySQLdb,最大的特点可能就是它的安装方式没那么繁琐,同时也兼容 MySQL-python

import pymysql

url,user,pwd,name='106.13.49.215','root','root','jup'
db=pymysql.connect(url,user,pwd,name)
cursor=db.cursor()
#创建数据库
create="create database jup"
cursor.execute(create)
db.commit()
#创建表
create= """CREATE TABLE sku (
         id bigint(20) not null AUTO_INCREMENT,
         date date,
         price float(32,9),
         name varchar(32) NOT NULL,
         PRIMARY KEY (id) USING BTREE
         )"""

cursor.execute(create)
db.commit()
#插入数据
insert="""insert into sku(date,price,name)values('%s','%s','%s')""" % '2019-02',23.89,'奶粉'

cursor.execute(insert)
db.commit()

#查询
query="""select * from tb_address"""
cursor.execute(query)
result=cursor.fetchall()

print(result)

爬虫

Scrapy

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。

项目地址:https://scrapy.org/

PySpider

pyspider 是一个用python实现的功能强大的网络爬虫系统,能在浏览器界面上进行脚本的编写,功能的调度和爬取结果的实时查看,后端使用常用的数据库进行爬取结果的存储,还能定时设置任务与任务优先级等。

项目地址:https://github.com/binux/pyspider

Crawley

Crawley可以高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等。

项目地址:http://project.crawley-cloud.com/

机器学习

matplotlib.pyplot

Matplotlib是一个Python 2D绘图库,可以生成各种硬拷贝格式和跨平台交互式环境的出版物质量数据。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。

Matplotlib中文文档

Pandas:python数据分析库

Pandas是一个开源的,BSD许可的库,为Python编程语言提供高性能,易于使用的数据结构和数据分析工具。 一个快速、高效的DataFrame对象,用于数据操作和综合索引;用于在内存数据结构和不同格式之间读写数据的工具:CSV和文本文件、Microsoft Excel、SQL数据库和快速HDF 5格式。

Pandas中文文档

NumPy

NumPy是Python中的一个运算速度非常快的一个数学库,它非常重视数组。它允许你在Python中进行向量和矩阵计算,并且由于许多底层函数实际上是用C编写的,因此你可以体验在原生Python中永远无法体验到的速度。

NumPy中文文档

参考

8个最高效的Python爬虫框架,你用过几个?

Python有哪些常见的、好用的爬虫框架?

用 Python 连接 MySQL 的几种姿势

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 入门
  • 常用类库
    • 文件操作
      • CSV
        • 内置csv module
        • pandas
      • DB操作
        • mysqlclient
        • PyMySQL
      • 爬虫
        • Scrapy
        • PySpider
        • Crawley
      • 机器学习
        • matplotlib.pyplot
        • Pandas:python数据分析库
        • NumPy
    • 参考
    相关产品与服务
    云数据库 MySQL
    腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档