列表,元组

#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. promise、async和await

    async:async function 声明将定义一个返回 AsyncFunction 对象的异步函数.当调用一个 async 函数时,会返回一个 Promise 对象.当这个 async 函数返回 ...

  2. cad问题小百科 持续更新

    一些浩辰的问题移步去: 浩辰问题        (浩辰可能和桌子具有相同的问题,所以这篇你可能还是要看 cad2007遇到了这种情况 安装问题安装CAD出现C++2005问题的解决方法,出现此问题,原 ...

  3. python 'utf-8' codec can't decode byte 0xb8 in position 0: invalid start byte

    在导入csv文件中,出现如上所示的错误,经过查阅资料,解决方法如下: 方法一: pd.read_csv(file_path, encoding='unicode_escape') 方法二: pd.re ...

  4. 把jar包安装到本地Maven仓库

    使用的场景 自己写的工具类想安装到本地 从Maven仓库中下载不下来的jar 使用的步骤       首先要保证自己的Maven配置全局环境变量,如果没有配置过maven全局变量,可以按照下面的步骤配 ...

  5. Java里 equals 和 == 以及 hashcode

    本文探讨的是老掉牙的基础问题,先建个实体类 package com.demo.tools; public class User { private String name; public User(S ...

  6. [转帖]vagrant 添加带版本号的 box

    vagrant 添加带版本号的 box https://www.jianshu.com/p/12cf1ecb224b 第三种好用 lnmpcomposerphp  阅读约 8 分钟 前言 众所周知,v ...

  7. SpringBoot使用@ServerEndpoint无法依赖注入问题解决(WebSocket

    参考: https://blog.csdn.net/Programmer__Wang/article/details/88538993 https://blog.csdn.net/kxj1998052 ...

  8. 用LabVIEW实现《家国梦》游戏中自动收货收金币

    前几周,很流行一个手机游戏,叫<家国梦>.我在手机上玩了一两天后,发现了两个问题: 1. 收货收金币太没意思,只需要手指滑在固定的路线,一会儿就烦了 2. 怎么追赶也追不上手快的人(当然也 ...

  9. FusionInsight大数据开发---Flume应用开发

    Flume应用开发 要求: 了解Flume应用开发适用场景 掌握Flume应用开发 Flume应用场景Flume的核心是把数据从数据源收集过来,在送到目的地.为了保证输送一定成功,发送到目的地之前,会 ...

  10. SQL Server中VARCHAR(MAX)和NVARCHAR(MAX)使用时要注意的问题(转载)

    在Microsoft SQLServer2005及以上的版本中,对于varchar(n).nvarchar(n)和varbinary(n)有了max的扩展.可以使用如:varchar(max).nva ...