计算机编程

python入门到实践

2020-07-28  本文已影响0人  jeason22

python应用领域:

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")

面向对象编程

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

从左到右方向,第一个索引值为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)显示数据

上一篇 下一篇

猜你喜欢

热点阅读