列表,元组

#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. 《Linux就该这么学》培训笔记_ch01_部署虚拟环境安装Linux系统

    <Linux就该这么学>培训笔记_ch01_部署虚拟环境安装Linux系统 文章最后会post上书本的笔记照片. 文章主要内容: 在虚拟机中安装红帽RHEL7系统 在Linux系统中找回r ...

  2. Linux shell脚本单例模式实现

    一.说明 关于单例模式,最开始的是一些小工具,运行起来后再点击运行时会提示已经运行了一个实例,觉得挺有意思但也没有很在意. 前段时间看了前领导的一段代码不太懂是做什么用的,同事查了下资料说是为了实现单 ...

  3. TF-IDF算法简析

    TF-IDF算法可用来提取文档的关键词,关键词在文本聚类.文本分类.文献检索.自动文摘等方面有着重要应用. 算法原理 TF:Term Frequency,词频 IDF:Inverse Document ...

  4. 第七节:Asp.Net Core内置日志和整合NLog(未完)

    一. Asp.Net Core内置日志 1. 默认支持三种输出方式:控制台.调试(底部输出窗口).EventSource,当然也可以在Program类中通过logging.ClearProviders ...

  5. IDEA中Tomcat部署时war和war exploded区别

    原理说明 war模式:将WEB工程以包的形式上传到服务器 :war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器: 含义解释 war模式这种可以称之为是发布模式,看名字也知道, ...

  6. vs2015 出现的错误lnk:200:-main已在ax.obj中定义

    原因是:一个项目里只能有一个main函数, 如果出现 error:LNK200 的错误,那么需要检查你是不是有两个源代码文件中都定义了main函数. 解决方案:  把其中的一个main函数删掉

  7. SQL Server 中获取一个表的字段信息

    直接贴代码了: SELECT sysobjects.name AS TableName, syscolumns.Id AS TableId, syscolumns.name AS DbColumnNa ...

  8. 「UNR#2」黎明前的巧克力

    「UNR#2」黎明前的巧克力 解题思路 考虑一个子集 \(S\) 的异或和如果为 \(0\) 那么贡献为 \(2^{|S|}\) ,不难列出生产函数的式子,这里的卷积是异或卷积. \[ [x^0]\p ...

  9. LinkedList、ArrayList、Vector三者的关系与区别?

    LinkedList.ArrayList.Vector三者的关系与区别? 区分ArrayList,Vector,LinkedList的区别 ArrayList,Vector的区别: 1.出现版本:Ar ...

  10. JavaScript入门(一)

    JavaScript入门篇—开篇 Document对象 1Document对象表示当前页面,HTML在浏览器中是以DOM形式表示为树形结构.Document是DOM树的根节点.(因此需要查找DOM树中 ...