(一)Python基础学习

Num01:python的基本数据类型

①字符串:可进行拼接和截取

②数字:int,float,complex(复数)

涉及到格式转换:int(x)转换为整数,float(x)转换为浮点数,complex(x)将x转换为一个复数,实部为x,虚部为0

运算注意:a/b得到的是一个浮点数,a//b得到的是:整数除法返回向下取整后的结果。a**b代表:a的b次幂

③列表(list)

形如:list=['Python','Web','Script']可对其进行访问和修改与删除

删除:del list[2]就将Script删除掉


a=[0,1,2,3,4] a[0]=9 b=[5,6,7,8] del b[2] print(a[:3]) print(b)

输出:

[9, 1, 2]
[5, 6, 8]

④Tuple(元组)

形如:tup1 = ('Google', 'Runoob', 1997, 2000)

我们不能修改里面的元素值,但可以进行访问和与其他的字符串进行拼接,元组有一些内置函数:len(tuple)计算元组的元素个数,max,min返回元组中的最大值和最小值。

⑤字典(Dictionary)

含有key和value,和map是一样的


# #字典;键与值的集合
dict = {}
dict['one'] = "1 - 菜鸟教程"
dict[2] = "2 - 菜鸟工具" tinydict = {'name': 'runoob', 'code': 1, 'site': 'www.runoob.com'} print(dict['one']) # 输出键为 'one' 的值
print(dict[2]) # 输出键为 2 的值
print(tinydict) # 输出完整的字典
print(tinydict.keys()) # 输出所有键
print(tinydict.values()) # 输出所有值
print(dict.keys()) # 输出所有键
print(dict.values()) # 输出所有值
print ("我叫 %s 今年 %d 岁!" % ('小明', 10))

输出:

1 - 菜鸟教程
2 - 菜鸟工具
{'name': 'runoob', 'code': 1, 'site': 'www.runoob.com'}
dict_keys(['name', 'code', 'site'])
dict_values(['runoob', 1, 'www.runoob.com'])
dict_keys(['one', 2])
dict_values(['1 - 菜鸟教程', '2 - 菜鸟工具'])
我叫 小明 今年 10 岁!

Num02:while和if,elif,else与随机数的使用

一个猜数字的demo


#while和if elif和随机数的使用
k=random.randint(0,100)
print(k)
num=-1
while(num!=k):
num = int(input("请输入你猜的数字:\n"))
if(num==k):
print("恭喜你猜对了!")
break
elif(num>k):
print("猜大了!")
else:
print("猜小了")

判断平年还是闰年


#判断闰年与平年
year = int(input("输入一个年份: "))
if (year % 4) == 0:
if (year % 100) == 0:
if (year % 400) == 0:
print("{0} 是闰年".format(year)) # 整百年能被400整除的是闰年
else:
print("{0} 不是闰年".format(year))
else:
print("{0} 是闰年".format(year)) # 非整百年能被4整除的为闰年
else:
print("{0} 不是闰年".format(year))

Num03:函数的使用

斐波那契数列求解:


def fic(k):
if(k==1):
return 1
elif(k==2):
return 1
else:
return fic(k-1)+fic(k-2) c=int(input("请输入要查询的第几个斐波那契数:\n"))
print(fic(c))

Num04:面向对象编程

1.封装

 

class Big():
def __init__(self,name,age):
self.name=name
self.age=age
def detail(self):
print(self.name)
print(self.age) obj1=Big('Tom','18')
obj1.detail()  

通过封装的形似定义了一个Big类,在该类中可以通过各种函数来定义Big的各种行为和特性,这就是面向对象编程所需要的,会使对象的操作简单,有条理化。

2.继承

继承:子继承了父的某些特性

猫:喵喵叫、吃、喝、拉、撒

狗:旺旺叫、吃、喝、拉、撒

我们将他们共同的特性整合到一起

建立一个Animal:吃喝拉撒

猫:喵喵叫(猫继承动物的功能)

狗:汪汪叫(狗继承动物的功能)

 

class Animal:
def eat(self):
print("%s 吃" %self.name)
def drink(self):
print("%s 喝" %self.name)
def shit(self):
print("%s 拉" %self.name)
def prr(self):
print("%s 撒" %self.name)
class Cat(Animal):
def __init__(self,name):
self.name=name
def cry(self):
print('喵喵叫')
class Dog(Animal):
def __init__(self,name):
self.name=name
def cry(self):
print('汪汪叫')
c1=Cat('我家的小白猫')
c1.eat()
c1.cry()
d1=Dog('胖子家的小黑狗')
d1.eat()
d1.cry()  

Num05:简单的入门级爬虫实验

爬取我的博客园的第一篇博客的时间和标题

分三步走:

第一步:获取页面

首先导入import requests,使用requests.get(link,headers=headers)获取网页

注意:用requests的headers伪装成浏览器访问,我们要获得的信息在response.text里(就是网页的内容代码)

第二步:提取想要的数据

这里会用到BeautifulSoup这个库对爬下来的页面进行解析,将html代码转化为soup对象,接下来用find去寻找自己的数据

第三步:存储数据

存储到本地的txt文件,将获取的信息写入txt里,这里要特别注意格式encoding='utf-8',否则到txt里的东西会乱码

 

from bs4 import BeautifulSoup
import requests, sys
import random
#1.获取网页代码
url = 'https://www.cnblogs.com/xiaofengzai/' #请求地址
headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}#创建头部信息
response = requests.get(url,headers = headers) #发送网络请求 #print(response.text)
#2.提取想要的数据
soup=BeautifulSoup(response.text,"html.parser")
title=soup.find("a",class_="postTitle2").text.strip()
print(title)
time=soup.find("div",class_="dayTitle").a.text.strip()
print(time)
#3.写入到文件里
with open("title.txt","a+",encoding='utf-8') as f:
f.write(time+":"+title)
f.close()  

txt内容

日期 开始时间 结束时间 中断时间 净时间 活动
3/11 10:50 11:20 5 25 学习python的基本数据
3/11 14:00 15:30 10 80 学习python的语法,函数以及面向对象
3/11  16:00 17:30 5 85 对Python进行实战测试,巩固知识
3/11 20:30 21:30 10 50 学习简单的爬虫并动手进行练习
3/11 21:40 22:30 0 50 写博客,总结

今日有效总代码量(Python):180行,总学习时间:290分钟

python基础语法和实战练习的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  2. Python 基础语法(三)

    Python 基础语法(三) --------------------------------------------接 Python 基础语法(二)------------------------- ...

  3. Python 基础语法(四)

    Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...

  4. Python 基础语法(二)

    Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...

  5. Python 基础语法

    Python 基础语法 Python语言与Perl,C和Java等语言有许多相似之处.但是,也存在一些差异. 第一个Python程序 E:\Python>python Python 3.3.5 ...

  6. 吾八哥学Python(四):了解Python基础语法(下)

    咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...

  7. python学习第五讲,python基础语法之函数语法,与Import导入模块.

    目录 python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 1.函数语法定义 2.函数的调用 3.函数的文档注释 4.函数的参数 5.函数的形参跟实参 6.函 ...

  8. python学习第四讲,python基础语法之判断语句,循环语句

    目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...

  9. Python基础语法(三)

    Python基础语法(三) 1. 数值型数据结构 1.1 要点 在之前的博客也有提到,数值型数据结构在这里就不过多介绍了.在这里提及一些需要知道的知识点. int.float.complex.bool ...

随机推荐

  1. 武汉百得思维Java面试总结

    武汉百得思维Java面试总结 在一个愉快的下午,我们并不十分愉快地参加了宣讲会.那是国庆的前两天,大家正在为放假的愉悦所兴奋也在为找工作而紧张. 在听过一阵胡吹乱侃之后,大家都昏昏欲睡,于是终于迎来了 ...

  2. JavaScript动画实例:动感小球

    已知圆的坐标方程为: X=R*SIN(θ) Y=R*COS(θ)     (0≤θ≤2π) 将0~2π区间等分48段,即设定间隔dig的值为π/24.θ初始值从0开始,按曲线方程求得坐标值(x,y), ...

  3. CSS背景处理

    CSS背景处理 背景样式 背景颜色 如果想让一个区域具有纯色的背景,可以使用background-color进行设置,背景颜色可以是rgb,rgba,#16网页色. <!DOCTYPE html ...

  4. 图解:有向环、拓扑排序与Kosaraju算法

    图算法第三篇 图解:有向环.拓扑排序与Kosaraju算法 首先来看一下今天的内容大纲,内容非常多,主要是对算法思路与来源的讲解,图文并茂,希望对你有帮助~ 1.有向图的概念和表示 概念 有向图与上一 ...

  5. IDEA 导入maven 项目,出现报错,不能运行之类的

    选择pom.xml,右键选择 Add as Maven Project

  6. 洛谷 P5022 旅行

    今天换标题格式了,因为感觉原版实在有点别扭…… 还是直接上题板,看完题再讲吧: 对了有个小细节没说,m一定是等于n或者等于n-1的. 这题是2018年提高组的真题哦!被我肝了2天肝出来了,2天……(真 ...

  7. P3913 车的攻击

    大致题意: 求出被车攻击到的格子 基本思路: 如果直接暴力出奇迹的话是存不下的, 所以就以另外的思路来想. 容斥原理! 我们可以先把那些在同一行或同一列的车去重,然后把去重后的行数列数记作cntx,c ...

  8. MySQL中的循环

    MySQL中的三中循环 while . loop .repeat 求 1-n 的和第一种 while 循环 : /* while循环语法: while 条件 DO 循环体; end while; */ ...

  9. 使用python打造一款音乐播放器

    作者qq:64761294 编程/考试交流群:834531270 欢迎交流 核心播放模块(pygame内核) import time import pygame import easygui as g ...

  10. 题解 洛谷 P4695 【[PA2017]Banany】

    考虑用动态点分治来解决像本题这样带修的树上路径问题. 首先对原树进行点分治,建出点分树,在点分树每个节点上用动态开点线段树来维护以该节点为起点,到其点分树子树中每个节点的利润. 查询时只需在点分树上当 ...