列表,元组

#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文件,爬虫初步学习的更多相关文章

  1. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍

    目录 python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍.md 一丶字典 1.字典的定义 2.字典的使用. 3.字典的常用方法. python学习第八讲,python ...

  2. python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍

    目录 python学习第六讲,python中的数据类型,列表,元祖,字典,之列表使用与介绍. 二丶列表,其它语言称为数组 1.列表的定义,以及语法 2.列表的使用,以及常用方法. 3.列表的常用操作 ...

  3. python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍

    目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...

  4. Python入门 [输出,注释,列表,元祖,集合,字典,if,while,for]

    print("Hello Python") #输出 ''' 多行注释 用 三个引号 ''' a=1 #赋值 变量首字母只能书字母下划线 第二个字符数字,字母,下划线 声明一个列表 ...

  5. Python基础5:列表 元祖 字典 集合

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

  6. Python基础5:列表 元祖 字典 集合 Json

    [ 列表] 列表(list)是Python以及其他语言中最常用到的数据结构之一.Python使用使用中括号 [ ] 来解析列表. 列表是可变的(mutable)——即:可以改变列表的内容. 相关操作: ...

  7. 关于python文件转为exe文件

    一.简介 py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序. py2e ...

  8. python 中的 字符串 列表 元祖 字典

    str 1 格式化输出 %法 第一种 %s+tuple %d+tuple name = input('请输入你的姓名:') age = input('请输入你的年龄:') hobby = input( ...

  9. Python学习day4 数据类型Ⅱ(列表,元祖)

    day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...

随机推荐

  1. es6 Decorator修饰器

    1.类的修饰: 修饰器(Decorator)函数,用来修改类的行为.修饰器是一个对类进行处理的函数.修饰器函数的第一个参数,就是所要修饰的目标类. @testable class MyTestable ...

  2. Linux 就该这么学 CH07 使用RAID和LVM磁盘阵列技术

    1 RAID (独立冗余磁盘阵列) RAID 技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据切割成多个区段之后分别存在各个不同的物理硬盘设备上,然后利用分散读写计数来提升磁盘 ...

  3. linux lnmp环境下 安装apache教程

    linux lnmp环境下 安装apache教程 源码安装 apr ,apr-util 安装apache要用<pre>wget http://mirrors.cnnic.cn/apache ...

  4. [转帖]面试问Kafka,这一篇全搞定

    面试问Kafka,这一篇全搞定 https://os.51cto.com/art/201911/606207.htm 图片来自 Pexels Kafka 基础 消息系统的作用 大部分小伙伴应该都清楚, ...

  5. C++ 结构体、模板、类、重载初使用

    目的:需要几个缓存用的数组900*750 首先定义一个模板<参数数据类型,参数1,参数2> 定义一个class类 名字自己取ap_uint0 下面是公用的数组模板[lrow][lcol] ...

  6. C++删除排序数组中的重复项

    class Solution { public: int removeDuplicates(vector<int>& nums) { if (nums.empty()) { ; } ...

  7. 【题解】Luogu P5327 [ZJOI2019]语言

    原题传送门 看到这种树上统计点对个数的题一般是线段树合并,这题也不出意外 先对这棵树进行树剖,对于每次普及语言,在\(x,y\)两点的线段树上的\(x,y\)两位置打\(+1\)标记,在点\(fa[l ...

  8. inux centos7下源码 tar安装5.7.26详解

    inux centos7下源码 tar安装5.7.26图文详解 官网地址 https://dev.mysql.com/downloads/mysql/ 1.卸载Linux系统上自带的mysql插件(o ...

  9. [转] Vue原理解析——自己写个Vue

    一.Vue对比其他框架原理 Vue相对于React,Angular更加综合一点.AngularJS则使用了“脏值检测”. React则采用避免直接操作DOM的虚拟dom树.而Vue则采用的是 Obje ...

  10. 论文笔记:LightGBM: A Highly Efficient Gradient Boosting Decision Tree

    引言 GBDT已经有了比较成熟的应用,例如XGBoost和pGBRT,但是在特征维度很高数据量很大的时候依然不够快.一个主要的原因是,对于每个特征,他们都需要遍历每一条数据,对每一个可能的分割点去计算 ...