![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python-小知识
文章平均质量分 97
shadowsland
想你所想,做你所做,就是自己!
展开
-
使用Python创建简单的HTTP和FTP服务
不管工作中还是其他场合,经常会有文件分享的需求,比如自己下了一个4GB的游戏,同事下了一个800MB的软件,其他人如果也需要这些文件,显然直接分享是最快捷、最方便、最环保的方式了,如果再重新下,既浪费时间,又浪费电。Windows自带了文件夹共享的功能,不过这玩意儿,至今我还没仔细的去折腾过,也没搞明白原理,我一直使用FTP来分享文件,如果有需要的话再弄个HTTP服务也足够应付了,我的目的仅仅只是文件分享,简单、易用是我主要关注的点。反复可耻这种需求必然是非常普遍的,解决方法也是多种多样。比如...转载 2020-12-16 16:48:43 · 238 阅读 · 0 评论 -
ros --- c++和python 中 launch和yaml使用
1. Launch使用ros单个工程的运行可以使用rosrun,但是做项目不可能只有一个或几个工程,当需要大量的工程配合运行时launch就应运而生了关于launch的说明可以参考ROS入门之——浅谈launch这里重点说明几点:launch文件需要放在某个package目录下,最好放在最主要的package目录下,醒目launch文件是可以跨包的,不要因为roslaunch test_pkg test.launch运行在test_pkg下而认为只能执行test_pkg下的节点,只要配置好对应的原创 2020-11-13 13:09:20 · 4886 阅读 · 5 评论 -
python --知识点 a += b 不等于a = a + b
不可变变量a = 1b = 2a1 = aa += bprint(a, a1) # 3, 1a = 1b = 2a1 = aa = a+bprint(a, a1) # 3, 1对于不可变类型在进行+=和=+之后结果是一样的可变变量a = [1, 2]b = [3]a1 = aa += bprint(a, a1) # [1, 2, 3] [1, 2, 3]a = [1, 2]b = [3]a1 = aa = a+bprint(a, a1) # [1, 2, 3原创 2020-09-21 09:54:46 · 451 阅读 · 0 评论 -
python -- Pandas replace自定义函数做数据替换
Pandas 作为python最常用的数据包之一经常会被用到,其涉及数据替换的方法有很多,下面简述我了解的几种方法:1. 常用的series 的 replacereplace(self,to_replace=None, # 替换前的数据value=None, # 替换后的数据inplace=False, # 是否修改源数据limit=None, # 修改限制regex=False, # 是否使用正则method=“pad”, # 填充方式,还有‘ffill’ 和‘bfill’)1原创 2020-09-15 18:00:45 · 2454 阅读 · 0 评论 -
python 小知识--- 解析命令行参数模块argparse
argparseargparse是python中用于解析命令行参数和选项的标准模块,它可以帮助我们轻松编写用户友好的命令行接口,它还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息使用方法先看一段实例代码 test.pyimport argparsefrom functools import reduceCalculator = { "add": lambda n: reduce(lambda x, y: x+y, n), "sub": lambda n: r原创 2020-09-04 18:06:47 · 577 阅读 · 0 评论 -
python 循环内使用列表append lambda 只有最后一个管用
先上一段代码看问题from tkinter import *root = Tk()def appear(index, letter): print(index, letter) entry.insert(0, f'{index}:{letter},') buttons[index].config(state="disabled")letters=["A", "B", "C", "D", "E", "F", "S", "R", "M"]buttons = []for原创 2020-08-22 16:34:54 · 1344 阅读 · 1 评论 -
python - 小知识 易错点
python平时使用中容易犯错误的地方:1. 不要在遍历中去删除元素有时候我们需要遍历处理,在处理完一个元素获得结果后进行删除,免得下次会重复处理浪费时间s = list('我是谁,我在哪里?')for i in s: print(i, end="") s.remove(i)输出我谁我哪?但是要注意从前往后删除,元素索引也会依次前移,导致结果不是你想过要的,尝试解决如果你能保证其元素不会重复度,可以试着从后往前遍历s = list('我是谁,在哪里?')for i in s[:原创 2020-08-10 13:55:53 · 167 阅读 · 0 评论 -
python小知识 --- f字符串保留小数
f-string亦称为格式化字符串常量(formatted string literals) 是Python**3.6** 新引入的一种字符串格式化方法该方法源于PEP 498 – Literal String Interpolation主要目的是使格式化字符串的操作更加简便关于其小数位保留先看一段代码,猜其小数点后带f和不带f的不同输出形式import times = time.time()while 1: t = time.time() - s print(f'带f: {t*原创 2020-08-10 11:40:15 · 21094 阅读 · 0 评论 -
python-小知识点 ---- 多字符串替换
一个长字符串或者一个文本文件做数据分析的时候经常遇到需要排除干扰项的需求,这时候就需要多字符串替换的功能使用str的 replace函数字符串常用的替换函数比如说将标点替换成空,使用replace连续替换多次即可s = ''' There was a card party at the rooms of Naroumoff, of the Horse Guards. The long winter night passed away imperceptibly, and it was five原创 2020-07-20 13:13:54 · 220 阅读 · 0 评论 -
python学习 - openpyxl行列读取,批注批量添加,列宽设置
openpyxl作为 python中常用的excel模块用于excel常用操作还是蛮方便的常用操作请参照行、列的读取先获取一个sheetdef excel_add_comment(file): wb = load_workbook(file, data_only=False) ws = wb.active ws.title = "sheetName" 方法1:使用字符串标注获取区间 row1= ws["A1:F1"] #第一行前五个 col1 = ws["A1:A6"] #原创 2020-07-15 14:38:34 · 3206 阅读 · 0 评论 -
python-小知识点 ---switch-case 模拟计算器
不同于其他语言,python中没有switch case语句,关于为什么没有,官方的解释是这样的python 需要实现类似switch-case功能就需要自定义函数或类来处理使用字典配合函数直接取值def foo(var): return { 'a': 1, 'b': 2, 'c': 3, }.get(var, 0) #0为找不到默认返回值,相当于处理default,可自设置calcer = input("输入:")result = [foo(原创 2020-06-18 17:36:59 · 302 阅读 · 0 评论 -
python-小知识点 ---字符串处理
对于字符串的处理无论是哪种语言都是相当重要的python对于字符串的处理提供了大量的内建函数:写法可以使用单引号,双引号包含字符串连续三个单引号或三个双引号,可以帮助我们创建多行字符串r字符串不转义常用转义符号 \ 反斜杠符号’ 单引号" 双引号\b 退格(Backspace)\n 换行\t 横向制表符\r 回车常用操作字符串提取python字符串有切片功能,可用于快熟提取子串注意提取规则是前包后不包s = '12345678'prin原创 2020-06-17 18:26:33 · 334 阅读 · 0 评论 -
python-小知识点 ---一行代码能干嘛
一行python代码到底能干嘛, 能丧心病狂…初级九九乘法表print('\n'.join([' '.join(['%s*%s=%-2s' % (y, x, x*y) for y in range(1, x+1)]) for x in range(1, 10)]))输出1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=161*5=5 2*5=10 3*5=15 4*5=20 5*5=251*6=6 2原创 2020-06-12 16:41:11 · 375 阅读 · 0 评论 -
python-小知识点 --- 判断字母大小写和数字字符串,特殊符号
1.对于字符串 — 使用字符串内置函数判断isalnum() 所有字符都是数字或者字母,为真返回 Ture,否则返回 Falseisalpha() 所有字符都是字母,为真返回 Ture,否则返回 Falseisdigit() 所有字符都是数字,为真返回 Ture,否则返回 Falseislower() 所有字符都是小写,为真返回 Ture,否则返回 Falseisupper() 所有字符都是大写,为真返回 Ture,否则返回 Falseistitle() 所有单词都是首字母大写,为真返回 Tu原创 2020-06-10 17:36:26 · 5991 阅读 · 0 评论 -
python-小知识点 ---小技巧
python日常小技巧1. 根据分数判定等级用if条件判断感觉很low, 使用bisect瞬间就高大上了import bisect as bsscore = [60, 70, 80, 90]f = "EDCBA"level = lambda x: f[bs.bisect(score, x)]print(level(46), level(69), level(76), level(80), level(92))说明:使用bisect模块的函数前先确保操作的列表是已排序的,有兴趣可以研究下原创 2020-05-27 16:44:35 · 267 阅读 · 0 评论 -
python学习记录 -- tkinter之Entry
创建Entry创建Entry并绑定变量,设置初始化信息from tkinter import * root = Tk() # 创建entry e = StringVar() entry = Entry(root, textvariable=e).pack() e.set('请在这里输入信息') mainloop()Entry对象与Lable和Button不同,不能直接设置...原创 2020-05-06 15:35:02 · 1218 阅读 · 0 评论 -
python学习记录-- tkinter的滚动条和Listbox
TkinterTkinter 是 python 下一个简单的窗口视窗设计的模块,比较适合window风格如果想用python写一些在window下使用的简单窗口应用的话,使用它还是比较方便的相对于pyQt等其他界面设计程序,使用Tkinter 设计界面生成的exe会小的多网上教程较多,这里不多讲,可以参考:tkinter窗口视窗教程大集合这里就简单的记录一下自己使用滚动条和Listbo...原创 2020-05-05 10:34:37 · 970 阅读 · 0 评论 -
python-小知识点 ---常用类型转换
python 常用类型简述数字:包含整数,浮点数,布尔值,直接赋值即可,不可变字符串:直接赋值即可,可以使用下标取值,不可变列表(list):有序集合,可变,可以使用下标取值元组(tuple):类似list,初始化后不能修改,不可变字典(dict):使用键值对的方式存储和获取,查询快速,可变,集合(set):类似字典,但没有key, 值不能重复,可用于去重,可变常用类型之间的转换先介绍常用函数:enumerate :将一个可迭代对象组合为一个索引序列,同时列出数据和数据下标,返回元组对,原创 2020-05-27 11:34:38 · 234 阅读 · 0 评论 -
python-小知识点 ---f字符串小数位和对齐
python f字符串注意Python3.6及以后的版本才支持 f字符串f-string在功能方面不逊于传统的%-formatting语句和str.format()函数,同时性能又优于二者,且使用起来也更加简洁明了,推荐使用f-string进行字符串格式化小数位和对齐实际是控制对齐方式输出宽度与精度a = ((3.23445555555, 4.77888888887), (3.477777744, 1.2888883455), 55.66, 7777)print(f"{'靠左0补齐:':>原创 2020-05-20 15:20:42 · 4012 阅读 · 0 评论 -
python-小知识点 --- 使用os.walk()遍历目录文件,文件按序号统一重命名
os.walk() 方法是一个简单易用的文件、目录遍历器,可以帮助我们高效的处理文件、目录方面的事情语法:os.walk(top[, topdown=True[, οnerrοr=None[, followlinks=False]]])参数top – 是你所要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。root 所指的是当前正在遍历的这个文件夹的本身的地址dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)files 同样是 list原创 2020-05-20 14:25:26 · 1253 阅读 · 0 评论