python预课04 列表,元祖,统计值计算示例,py文件转为EXE文件,爬虫初步学习
列表,元组
#list
l1 = [1, 2, 3, '高弟弟'] #定义一个列表
#增
l1.append("DSB") #最后增加"DSB"的元素
#删
l1.remove("高弟弟") #删除"高弟弟"元素
l1.pop(3) #删除列表第4个元素
del l1[-1] #删除列表最后一个元素
#改
l1[3] = 'DSB' #修改第4个元素为'DSB'
#查
l2 = [2, 5, 4, 8, 6, 1, 4, 5, 3, 5]
l2.sort(reverse=False) #把列表正序排列
l2.sort(reverse=True) #把列表倒序排列
l2_sort = sorted(l2) #把列表正序排列
l1.reverse() #把列表倒叙排列 ## 元组(tuple)
t1 = (1,2,3,'高弟弟') #定义一个元组,元组无法进行更改
t2 = tuple(l1) #转为元组类型
l3=list(t1) #转为列表,即可进行更改
统计值计算示例

def get_nums():
"""获取数据"""
nums = []
num = input("请输入列表数字: ").strip()
while num != '':
nums.append(num)
num = input("请输入数字: ").strip()
return nums # 函数返回nums def get_len(a):
"""获取长度"""
len = 0
for i in a:
if i != '':
len += 1
return len def get_add(a):
"""求和"""
sum = 0
for i in a:
if i != '':
sum += eval(i) # 去除字符串引号
return sum def get_mean(a):
"""求平均数"""
mean = get_add(a) / get_len(a)
return mean def get_var(a):
"""求方差"""
sum = 0
for i in a:
sum += (get_mean(a) - eval(i)) ** 2 # 去除字符串引号
var = sum / get_len(a)
return var def get_median(a):
"""求中位数"""
num_sort = sorted(a) # 正序排列
len = get_len(a)
if len % 2 == 0:
med = (eval(num_sort[len // 2 - 1]) + eval(num_sort[len // 2])) / 2
else:
med = eval(num_sort[len // 2])
return med def calculator():
while True:
input_list = get_nums()
# 三引号字符串可以换行
print("""请输入以下数字:
1.求列表长度
2.求和
3.求平均值
4.求方差
5.求中位数
6.退出""")
while True:
input_num = input("请输入数字:")
if input_num == '':
print(get_len(input_list))
elif input_num == '':
print(get_add(input_list))
elif input_num == '':
print(get_mean(input_list))
elif input_num == '':
print(get_var(input_list))
elif input_num == '':
print(get_median(input_list))
elif input_num == '':
print("结束")
return # 结束当前函数
else:
print("输入无效,请重新输入") calculator()
py文件转为EXE文件
1.运行cmd,输入 pip install pyinstaller(如果慢,可把下载源改为清华源,方法见 https://mirrors.tuna.tsinghua.edu.cn/help/pypi/) ,安装pyinstaller

2.输入 pyinstaller --version,可查看当前pyinstaller库的版本

3.拷贝需要转为exe文件格式的项目路径。也可以打开pycharm程序,如下图对项目右键,点击copy path

4.在cmd中打开到当前路径(生成文件会在此路径下,否则在默认路径),输入pyinstaller -F -w 项目名称,其中-w参数可取消exe运行时cmd弹出窗口


5.exe文件生成完成,在画框的位置下

6.如下右图生成统计值计算exe文件,其中如下左图再上一个文件目录下会生成spec的临时文件,可以删除


然而打开文件,电脑报错

经过网上查找分析,我猜测与pyinstaller -F -w 命令中,-w参数取消exe运行时cmd弹出窗口有关。于是我测试在cmd下运行 pyinstaller -F 统计值计算.exe


经测试,运行成功,推断正确
爬虫初步学习
安装 http请求模块,为爬虫做准备

爬取百度首页
import requests url='http://baidu.com' res=requests.get(url=url) #发送请求,url=可以省略
res.encoding=res.apparent_encoding #res.encoding获取res的编码格式;res.apparent_encoding获取网页正确的编码格式
print(res.text) #返回的结果是处理过的Unicode类型的数据 resutlt:
<html>
<meta http-equiv="refresh" content="0;url=http://www.baidu.com/">
</html>
爬取抽屉网信息
抽屉网会自动判断是否是脚本发送请求,如下图右下角复制用户代理信息

import requests
header = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
} #黏贴浏览器用户代理信息代理,并改为字典类型,伪装成浏览器访问
url = 'https://dig.chouti.com/'
res = requests.get(url,headers=header) #发送请求,header参数设定为给定参数,不设定header参数会被抽屉网判断为脚本
print(res.text) #返回的结果是处理过的Unicode类型的数据
爬取所得:

在pycharm中新键一个html文件,把结果复制进去。如下图,点击右上交搜狗浏览器图标进入浏览器打开

运行结果

图片无法显示,原因是抽屉网图片使用相对路径,非绝对路径,无法直接调用

python预课04 列表,元祖,统计值计算示例,py文件转为EXE文件,爬虫初步学习的更多相关文章
- python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...
- python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍
目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...
- Python入门 [输出,注释,列表,元祖,集合,字典,if,while,for]
print("Hello Python") #输出 ''' 多行注释 用 三个引号 ''' a=1 #赋值 变量首字母只能书字母下划线 第二个字符数字,字母,下划线 声明一个列表 ...
- Python基础5:列表 元祖 字典 集合
[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...
- Python基础5:列表 元祖 字典 集合 Json
[ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...
- 关于python文件转为exe文件
一.简介 py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序. py2e ...
- python 中的 字符串 列表 元祖 字典
str 1 格式化输出 %法 第一种 %s+tuple %d+tuple name = input('请输入你的姓名:') age = input('请输入你的年龄:') hobby = input( ...
- Python学习day4 数据类型Ⅱ(列表,元祖)
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...
随机推荐
- Elasticsearch 7.1.1 安装 pinyin 分词器插件
1.安装maven 安装插件前,需要用 maven 进行编译生成插件包,第一步先安装 maven yum install -y maven mvn -version Apache Maven (Red ...
- CentOS7 下 yum 安装 Docker CE
前言 Docker 使用越来越多,安装也很简单,本次记录一下基本的步骤. Docker 目前支持 CentOS 7 及以后的版本,内核要求至少为 3.10. Docker 官网有安装步骤,本文只是记录 ...
- Mysql 表分区分类
针对Mysql数据库,表分区类型简析. [1]表分区类型 (1)Range分区:按范围分区.按列值的范围区间进行分区存储:比如:id小于10存储在一个分区:id大于10小于20存储在另外一个分区: ( ...
- (火狐浏览器)前端以FormData类形成表单(含文件),通过ajax提交,PHP后端iconv()报“文件名含有非法字符”且POST中的‘Ttitle’丢失
[错误信息]后端获取的POST中丢失了Ttile,文件名乱码导致iconv()出错,利用mb_detect_encoding()函数检测输入的字符串,返回false; mb_detect_encodi ...
- C/C++ 指针常量和常量指针
为了区分是指向常量的指针还是const指针(表示指针本身是常量) 一个简便方法:从由往左读,遇到p就替换为“p is a”,遇到*就替换为“point to”,其余不变. const int * p ...
- 【拆分版】Docker-compose构建Kibana单实例,基于7.1.0
写在前边 今凌晨的时候已经把这整个Docker-compose构建的ELK集群跑起来了,有点没熬住,所以早上起来补文档,今天就上到公司测试服务器上测试了,好开森. 本文内容就是红框的部分,只是启动个K ...
- requests获取响应时间(elapsed)与超时(timeout)、小数四舍五入
前言 requests发请求时,接口的响应时间,也是我们需要关注的一个点,如果响应时间太长,也是不合理的.如果服务端没及时响应,也不能一直等着,可以设置一个timeout超时的时间 elapsed官方 ...
- ML学习笔记之Jupyter Notebook各种使用方法
0x00 概述 Jupyter Notebook安装的官方网站 安装Jupyter Notebook的先决条件:已经安装了python(python 2.7 或者是python3) 具体的安装方法: ...
- 来自后端的逆袭 blazor简介 全栈的福音
背景 什么是SPA 什么是MPA MPA (Multi-page Application) 多页面应用指的就是最传统的 HTML 网页设计,早期的网站都是这样的设计,所之称为「网页设计」.使用 MPA ...
- JavaScript入门(一)
JavaScript入门篇—开篇 Document对象 1Document对象表示当前页面,HTML在浏览器中是以DOM形式表示为树形结构.Document是DOM树的根节点.(因此需要查找DOM树中 ...