美文网首页计算机编程
python入门到实践

python入门到实践

作者: jeason22 | 来源:发表于2020-07-28 10:56 被阅读0次

python应用领域:

  • 人工智能:专家系统、机器学习、进化计算、模糊逻辑、计算机视觉、自然语言处理、推荐系统等。
  • 机器学习:从数据中产生模型算法,即学习算法,然后有新数据提供的适合,模型能够提高相应的判断,进行预测。
    机器学习分类:
    监督学习:机器学习的数据是有标记的
    无监督学习:数据无标记(聚类和降维)
    强化学习:正负激励(动态规划)AlphaGo Zero
  • 深度学习
    应用:图像识别、语言识别、自然语言处理
    开发机器学习的步骤:
    (1)手机数据
    (2)准备输入数据
    (3)分析输入的数据
    (4)训练算法
    (5)测试算法
    (6)使用算法

python

  • 变量与运算符
  • 字符串

列表

列表里面也可以写数字、borl值。例如:  friends = ["Kevin",2,False]
friends = ["Kevin","Karen","Jim","Oscar","Toby","Mike"]

元组

coordinates = (4,5)#元组一旦创建,其内元素不可改变
coordinates2 = [(4,5),(24,34)]#列表内镶嵌元组

字典

month_conversions = {"Jan":"January",
                     "Feb":"February",
                     }

for (多用来遍历)

friends = ["Jim","Karen","Kevin"]
for friend in friends:
    print(friend)

if else elif
if statements& comparisons(如果语句与比较)

def max_num(num1,num2,num3):
     if num1 >= num2 and num1 >= num3:
         return  num1
     elif num2 >= num1 and num2 >= num3:
         return  num2
     else:
         return num3   
print(max_num(3,2,1))

while
While loop(while 循环)

i = 1
while i <= 100:
     print(i)
     i = i + 5
print("done  with loop")

函数与模块
模块:将函数存储在被称为模块的独立文件中,再将模块导入到主程序中。

from module_name import function_name
#从module_name.py函数中调用function_name模块

使用as给模块指定别名

import munpy as num

使用星号(*)运算符可让Python导入模块中的所有函数:

from numpy import*

类与对象(对象=属性(特征)+方法(行为)
类:在python中,把具有相同属性和方法的对象归为一个类(class))
Python中,定义类是通过class关键字
类将函数和数据整洁地封装起来,让你能够灵活而高效地使用它们。

class Person(object):#类以class引出,类名的第一个字母大写,(object)也是固定语法
    class_name = "人类"
    
    def __init__(self,name,birth):#初始化类
        self.name = name
        self.birth = birth
        self.height = 170
        self.legs = 2
        
    def say(self):#定义函数
        print("我的姓名:",self.name)
        print("我出生于:",self.birth)
        
    def jiafa(self,x,y):#定义函数
        return x + y   

print(Person.class_name) #看看person类的名称
zhangsan = Person("张三", "1980-01-11")#实例化张三
print(zhangsan.class_name)#打印张三的名字
zhangsan.say()#调用张三say函数
#zhangsan.height
print("my heigth is",zhangsan.height)#打印张三的hight
print("i can plus:",zhangsan.jiafa(5,7))#调用张三jiafa函数
if zhangsan.legs == 2:#判断如果张三两条腿的话即为人类
    print(zhangsan.name," is a people")

面向对象编程

  • Python应用:常规软件开发、科学计算、自动化运维、云计算、Web开发、网络爬虫、数据分析、人工智能
  • pip工具主要用来管理Python扩展库
  • 自然语言使用双引号,机器标示使用单引号。
  • 模块级函数和类定义之间空两行;类成员函数之间空一行。

数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)

  • 字符串"abc" 列表[0,"abcd"] 元组("abc","def",(2,103))都属于序列,即有序。

从左到右方向,第一个索引值为0
字典:映射的类型 {“哈希值”:“对象”} {“weight”:10,“high”:29}
布尔类型只有True和False两种值
数字类型:Python3支持int、float、bool、complex(复数)。数据转换
内置的type()函数可以用来查询变量所指的对象类型。例如:

a, b, c, d = 20, 5.5, True, 4+3j
print(type(a), type(b), type(c), type(d))

网络爬虫

分类:服务器侧和客户端侧
网络爬虫是通过网页的链接地址寻找网页,从网站某一个页面开始,读网页的内容,找到再网页中的其他链接地址,然后通过这些链接地址寻找下一个网页,一直循环下去,知道抓取完所有的网页。
深度优先遍历策略:爬虫从起始页开始,一个链接一个链接的跟踪下去,处理完一条线再去处理另一条线。
宽度优先遍历策略:将新下载网页中发现的链接直接插入待抓取url队列的末尾。

爬虫框架:scrapy、xpath

(1)scrapy engine、scheduler、downloader、spiders
(2)
(1)导入模块:
import requests
from lxml import etree
(2)获取源代码:
html = requests.get
html = html.text #转换为text格式
(3)利用Xpath提取感兴趣的内容
Selector = etree.HTML(html) #转换为能用XPath的文本形式
content = Selector.Xpath('一段符号')
(4)显示数据

相关文章

网友评论

    本文标题:python入门到实践

    本文链接:https://www.haomeiwen.com/subject/qzaxrktx.html