一日多技,技能-Linux-Python-Life 004

简介: 一日多技,技能-Linux-Python-Life 004

简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。

技能

1、长网址转短网址?

有时候需要往群里分享链接,但是网址太长了,直接发出去,对群友不是很友好,所以最好的方法是通过一些短网址平台将长网址转成短网址(可以自己代码diy)。

这里我推荐:https://sina.lt/

image.png

压缩前:https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUyOTAwMzI4NA==&action=getalbum&album_id=2539917502613553153&scene=173&from_msgid=2247527635&from_itemidx=1&count=3&nolastread=1#wechat_redirect
压缩后:https://dwz.win/az6Q

image.png

点击订阅老表新专栏:<一日多技>

2、Github 项目 git clone 很慢,怎么加速?

可以使用国内加速器(镜像),我常用的是:https://github.91chi.fun

使用国内镜像,在 git clone 链接前面增加 https://github.91chi.fun 即可。

git clone https://github.com/vercel/swr.git
改为 git clone https://github.91chi.fun/https://github.com/vercel/swr.git

如果我们除了 git clone 主项目外,还需要 git clone 循环克隆依赖项目,则会使用:

git clone --recursive https://github.91chi.fun/https://github.com/Microsoft/LightGBM

这时虽然加了国内加速器,但是只对主项目有效,clone 其他项目还是走的国外,这样还是会出现 403 错误,当然也有解决方法:

  • 先 git clone 主项目
  • 修改项目中的 .gitmodules 内容(里面记录了要clone的依赖),加上国内加速器
  • 项目目录下执行 git submodule update --init --recursive
  • 如果提示失败,可以继续执行 git submodule update --recursive

Linux 相关

1、删除之前执行的指令?

什么时候会用?创建镜像,可能需要修改新增一些东西,在进入容器执行相关指令后,docker commit 成一个新镜像,可以删除 之前执行指令。

history -c

2、终端查看 显卡 GPU使用情况?

watch -n 1 nvidia-smi

n 后面接的是刷新频率,1 表示每秒刷新一次。

Python 相关

1、如何查看 Python 某个包的路径?

import mmseg
print('mmseg path:', mmseg)

2、字符串转字典的坑和方法?

my = "{'name': '简说Python', 'author': '老表'}"

上面字符串,如果直接 dict(my) 转成字符串会出现下面错误,原因是没法直接通过 dict 将字符串转成字典:

ValueError: dictionary update sequence element #0 has length 1; 2 is required

再想到可以使用 json 读取转变,但是直接 json.loads(my)会出现下面错误:

JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

这个错误原因是 json 需要字典字符串是 双引号包裹的,但是案例是 单引号。

import json
my = "{'name': '简说Python', 'author': '老表'}"
type(json.loads(my.replace("\'", "\"")))

我们可以使用上述方法将字典字符串内的 单引号 改成 双引号,然后 loads 可以解决上面问题。

my = "{'name': '简说Python', 'author': '老表'}"
type(eval(my))

也可以使用内置函数 eval 来将字典字符串转为字典。

3、Python 去除重复数据?

我最先想到的就是 pandas 了,先设法将数据读取转成 DataFrame 格式,然后掉用 drop_duplicates 函数即可。

DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)

  • subset : 指定按哪些列来判断是否重复,默认所有列
  • keep : 删除重复项,保留那一次的数据,默认 first(保留第一次出现的),也可以设置成 last (保留最后一次出现的)
  • inplace : 是否直接在原数据操作修改,默认为 False(不在原数据上修改,返回修改后的数据对象)。
import pandas as pd
my_df = pd.DataFrame([{'name': '简说Python', 'author': '老表'}, 
                      {'name': '简说Python', 'author': '老表Max'}, 
                      {'name': '简说Python', 'author': '老表Pro'}
                      ])
my_df_m = my_df.drop_duplicates()

生活

生活在荡漾,缺乏思考

今天分享就这些啦,希望对大家有所帮助,这是一个新栏目,总结下每天遇到的问题,记录分享给大家。喜欢就点个赞~

相关文章
|
Linux 编译器 C语言
Linux五大步安装Python
Linux五大步安装Python
918 0
Linux五大步安装Python
|
11月前
|
Linux C语言 Python
|
Linux 开发者 Python
Linux 下如何安装 Python 3(下)|学习笔记
快速学习 Linux 下如何安装 Python 3(下)
94 0
Linux 下如何安装 Python 3(下)|学习笔记
|
存储 并行计算 Ubuntu
一日多技,技能-Linux-Python-Life 005
一日多技,技能-Linux-Python-Life 005
146 0
一日多技,技能-Linux-Python-Life 005
|
JavaScript 数据挖掘 TensorFlow
一日多技,技能-Linux-Python-Life 003
一日多技,技能-Linux-Python-Life 003
一日多技,技能-Linux-Python-Life 003
|
SQL 数据挖掘 Linux
一日多技,技能-Linux-Python-Life 001
一日多技,技能-Linux-Python-Life 001
100 0
一日多技,技能-Linux-Python-Life 001
|
Linux C语言 开发者
Linux 下如何安装 Python 3(上)|学习笔记
快速学习 Linux 下如何安装 Python 3(上)
424 0
Linux 下如何安装 Python 3(上)|学习笔记
|
Java Linux C#
【python | linux08】对象编程-超详细超全面
面向对象(object-oriented ;简称: OO) 至今还没有统一的概念 我这里把它定义为: 按人们认识客观世界的系统思维方式,采用基于对象(实体) 的概念建立模型,模拟客观世界分析、设计、实现软件的办法。 面向对象编程(Object Oriented Programming-OOP) 是一种解决软件复用的设计和编程方法。 这种方法把软件系统中相近相似的操作逻辑和操作应用数据、状态,以类的型式描述出来,以对象实例的形式在软件系统中复用,以达到提高软件开发效率的作用。............
94 0
【python | linux08】对象编程-超详细超全面
|
Linux 网络安全 C语言
Linux下Python3.6的安装及避坑指南
Linux下Python3.6的安装及避坑指南
342 0
Linux下Python3.6的安装及避坑指南
|
Linux Python
linux和python详细课件
linux和python详细课件
83 0