
python
qq_41051690
头疼
展开
-
python读取excel中数据并抓取数据输出到新的excel中(最简版)
入职选调生后,很少再写代码了,前一段时间组织部一位同事,让帮忙汇总300多个村党支部信息,如果手动操作,那当然很麻烦,作为学过python的人,其实很简单,下面的程序包含excel数据的读取和写入,希望可以帮助大家。在我看来,自动化办公是趋势,更是将来大力发扬的,愿工作越来越顺利。# coding:utf-8import osimport xlrdimport openpyxlimport pandas as pdpath = 'C:\\Users\\think\\Desktop\\3'p原创 2021-08-18 16:05:11 · 7702 阅读 · 0 评论 -
python合并两个txt文件,最简洁版本
# coding:utf-8;import osdef merge_file(path): files = os.listdir(path) print(files) outfile = 'result.txt' """a+是可以写也可以在文件后面追加,即在合并两个文件""" k = open(path + outfile, 'a+') #...原创 2019-11-25 16:26:40 · 3218 阅读 · 6 评论 -
2019年快手笔记:求连续子数组的最大和
1、题目描述2、代码:# coding:utf-8;"""最大子段和问题result[i]记录以i结尾的最大子段和,其中max(0,res)目的在拿出新的i时,前面的res如果是负数,我们就不能相加了,否则在取i这个值时,就不是最大值了"""num = list(map(int, input().split(',')))# print(num)result = [0]res =...原创 2019-08-30 20:44:26 · 172 阅读 · 0 评论 -
判断某个字符串是否为回文字符串(python版)
1、回文字符串:一个字符串,不论是从左往右,还是从右往左,字符的顺序都是一样的(如abba,abcba等)。2、如何判断:判断回文字符串比较简单,即用两个变量left,right模仿指针(一个指向第一个字符,一个指向最后一个字符),每比对成功一次,left向右移动一位,right向左移动一位,如果left与right所指的元素不相等则退出,最后比较left与right的大小,如果left>...原创 2019-08-31 22:39:23 · 16560 阅读 · 1 评论 -
剑指offer:二维数组中的查找
(1)查找的思路:首先从最右上角查询,如果查询的值大于给的目标值,则去除这一列,接着继续查询,再从最右上角查询的值如果小于给的目标值,由于给的数组从上到下,从左到右都是递增的,如果查询的值小于给的目标值,则行数相加,向下查询,依次循环。(2)代码:C++代码class Solution {public:bool Find(int target, vector<vector > ...原创 2019-09-03 00:03:14 · 125 阅读 · 0 评论 -
剑指offer:替换空格
1、题目描述2、思路及代码计算空格个数,同时添加的%20,其每次增加的字符个数为3-1=2个,增加的同时将空格之后的字符向后移动两个用来添加%20,主要是从后往前来循环,只需复制一次字符,所以时间复杂度为O(n).C++代码class Solution {public: void replaceSpace(char *str,int length) { if (str ...原创 2019-09-03 23:53:11 · 153 阅读 · 0 评论 -
2019年网易笔试:牛牛的闹铃(python版)
1、题目描述2、代码及思路# coding:utf-8;"""思路:按照循序写入闹铃,将其存数NL列表中,谈后对列表进行排序,因为求得最晚时间所以我们这里进行NL的排序,并且从后往前拿,这样做虽然复杂度还是O(n),但是还是比较快的,然后根据闹铃时间与到学校的时间进行相加,跟上课时间进行比较,如果相加结果小于等于,那个闹铃就是最晚起床的时间。"""N = int(input())...原创 2019-09-05 23:02:49 · 151 阅读 · 0 评论 -
小米笔试:找出单向链表中的一个节点,该节点到尾指针的距离为K
1、题目描述2、代码# coding:utf-8;class Node: def __init__(self, x): self.value = x self.next = Nonehead = Node(0)temp = headfor i in range(1, 8): node = Node(i) temp.nex...原创 2019-09-07 23:52:43 · 278 阅读 · 0 评论 -
剑指offer:从尾到头打印链表
1、题目描述2、代码及思想思路简单:将各个字符输出,然后翻转一下,也可以使用栈的方式解决这种问题,也就是先进后出,后进先出的思想。class Solution: # 返回从尾部到头部的列表值序列,例如[1,2,3] def printListFromTailToHead(self, listNode): # write code here r...原创 2019-09-08 00:24:27 · 115 阅读 · 0 评论 -
剑指offer:重建二叉树
1、题目描述2、代码(python)# coding:utf-8;class Solution: # 返回从尾部到头部的列表值序列,例如[1,2,3] def printListFromTailToHead(self, listNode): # write code here result = [] while listNo...原创 2019-09-08 19:17:09 · 104 阅读 · 0 评论 -
剑指offer:用两个栈实现队列
1、题目描述2、思路及代码我们分别建立两个栈:stack1、stack2. 在stack1中存储数据也就是在队尾插入节点,而stack2用来弹出,也就是在队列头部删除节点的功能。主要在于如何删除头节点:需要将stack1的元素不停的使用pop()函数弹出,存放到stack2中,那么相当于将stack1不停的以相反的顺序压入stack2,则头节点也就在stack2的第一个元素,使用pop()函...原创 2019-09-08 22:56:25 · 111 阅读 · 0 评论 -
快速排序(python版)
1、概念:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。2、原理:递归的思想。(1)在数列中,选择任意一个位置的元素作为基准值;(2)将所有值都跟该值进行比较,如果小于基准值的放到左边,大于等于基准值放到右边;(3)以基准值分层的左右两边...原创 2019-09-08 23:51:52 · 213 阅读 · 0 评论 -
冒泡排序(python版)
1、冒泡排序的思想: 每次比较两个相邻的元素, 如果他们的顺序不符合我们固定的规则(递增或递减),则将他们的位置进行交换。2、冒泡排序的原理:每一次只能给一个数找到固定的位置,如果n个数进行排序,则需要给n-1个数找到位置,也就是说要进行n-1次循环。3、代码# coding: utf-8;def bubble_sort(b): n = len(b) """第一个循环设...原创 2019-09-09 00:54:11 · 122 阅读 · 0 评论 -
冒泡排序的优化(python)
1、遇到的情况:对于s = [5, 1, 2, 3, 4]这个列表而言,只执行一次循环即可实现排序,如果继续循环,就是1与2、3、 4进行排序,很浪费时间,所以没必要。2、解决办法:增加标示为flag,如果flag为True则表示还要继续排序,否则直接输出。3、代码# coding: utf-8;def bubble_sort(b): n = len(b) "...原创 2019-09-09 01:13:17 · 340 阅读 · 0 评论 -
二分查找(python版)
1、定义:二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。2、思路:首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,...原创 2019-09-09 17:04:06 · 255 阅读 · 0 评论 -
二分查找_x的平方根
1、题目描述2、代码# coding:utf-8;def mysqrt(x): if x <= 1: return x l = 0 r = x while l < r: m = (l+r) // 2 if m * m <= x: l = m + 1 ...原创 2019-09-09 17:36:35 · 635 阅读 · 0 评论 -
python中的set()函数
1、set()函数 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。 并且其返回的对象是一个iterable – 可迭代对象的对象。2、举例说明set()函数的使用:并集(|)、交集(&)、差集(-) 特别备注:差集是指给第一个set(s)去除set(s)与set(s1)的交集。代码:# coding:utf-8;"""&求交集...原创 2019-08-30 16:51:27 · 2674 阅读 · 0 评论 -
2019年快手:数字序列第n位的值(python版)
1、题目描述2、代码及思路# coding:utf-8;"""思路:利用a(a+1) = n"""import mathn = int(input())a = math.ceil((1 + (1+8*n)**0.5) / 2) - 1print(a)原创 2019-08-29 22:57:46 · 328 阅读 · 0 评论 -
华为笔试:字符串加密(python版)
1、题目描述2、代码及思路# coding;utf-8;"""分两种情况:主要思想是字符与ascii码之间的转换(1)加密:在A-Y,转为相应的ascii+1,然后chr函数转为字符,对于特殊的Z,直接输出a,在a-y转为相应的ascii+1,然后chr函数转为字符,对于特殊的z,直接输出A;(2)解密:在B-Z,转为相应的ascii-1,然后chr函数转为字符,对于特殊的A,直接输...原创 2019-08-28 17:37:13 · 1022 阅读 · 0 评论 -
python版本的GNSS时间转换:公历与儒略日的互相转换,以及儒略日转为GPST。
python版本的GNSS时间转化:我自己定义了一个convert_time()类,可以通过类的调用实现时间转化,类似一个模块吧。class convert_time():def init(self, year, month, day, hour, minute, second):self.year = yearself.month = monthself.day = dayself...原创 2019-08-13 15:07:51 · 1636 阅读 · 2 评论 -
python中判断某个元素在list中是否存在
1、关键字:in 和 not in比如: list = [1, 2, 3] 判断 3或者某个元素a=3是否包含在列表中,很简单:print(‘3’ in list) 输出结果为True;print(a in list) 输出结果为True;print(‘4’ in list ) 输出结果为False;2、个人经历及实践:最近要对GNSS实时数据进行筛选,根据别人给的筛选文件,对实时产...原创 2019-08-15 14:16:26 · 14819 阅读 · 0 评论 -
2019年快手笔试题:字符串排序(python版)
(1)题目描述(2)思路与源代码原创 2019-08-25 21:48:10 · 278 阅读 · 0 评论 -
2019年快手笔试:字符串包含(python版)
(1)题目描述下面标记的这句话很重要,当时没看清楚以为很简单,其实难点在这里,循环输入数据解决办法:进行输入的判断while True:try:a,b = input().split()except:break如果输入数据,则继续循环,如果输入数据为空,则推出循环。(2)思路与代码:# coding:utf-8"""思路:如果a包含在b中或者b包含在a中,输出1,否则输出0...原创 2019-08-25 22:23:36 · 250 阅读 · 0 评论 -
2019年网易笔试题:表达式求值(python版)
(1)思路一:不去观察规律,将所有可能列出来,求这些值的最大值a, b, c = map(int, input().split())print(max(abc, (a+b)*c, (a+c)*b, (b+c)*a))(2)思路二:不用考虑括号,最大值一定是由三个数里最大的一个数乘另外两个加或乘的最大值num = list(map(int, input().split()))num.sor...原创 2019-08-21 23:25:23 · 640 阅读 · 0 评论 -
python中取余(%)基本原理和取整(//)基本原理
(1)python中求余操作%其计算公式为 a = b % c 等价于 a = b - c * (b // c)其中 b为除数,c为被除数;(2) 举例: -1%4 = 3即 -1 - 4*(-1//4) = -1+4 =3;原创 2019-08-22 23:39:34 · 4337 阅读 · 2 评论 -
2019年网易笔试题:迷路的牛牛(python版)
思路:从北开始,顺时针旋转,将N,E,S,W分别记为0,1,2,3,左转相当于逆时针转,即-1;右转+1。代码:n = int(input())s = input()count = 0pos = [‘N’, ‘E’, ‘S’, ‘W’]for i in range(0, len(s)):if s[i] == “L”:count -= 1else:count += 1print...原创 2019-08-23 00:20:52 · 271 阅读 · 0 评论 -
python中的groupby()函数
1、groupby()函数介绍groupby() 函数扫描整个序列并且查找连续相同值(或者根据指定key函数返回值相同)的元素序列。 在每次迭代的时候,它会返回一个值和一个迭代器对象, 这个迭代器对象可以生成元素值全部等于上面那个值的组中所有对象。2、举例:# coding:utf-8;from itertools import groupbystring = input()prin...原创 2019-08-26 19:45:32 · 3656 阅读 · 0 评论 -
2019年快手笔试题:字符串压缩(python版)
1、题目描述2、使用groupby函数 coding:utf-8; from itertools import groupby string = input() print(string) for item, num in groupby(string): # print(item) # print(num) # for i in num: ...原创 2019-08-26 19:49:43 · 497 阅读 · 0 评论 -
BNC软件实现轨道、钟差、电离层产品的播发截图
(1)实时GNSS精密产品播发软件实际运行截图原创 2019-08-25 22:44:23 · 2297 阅读 · 4 评论 -
2019年快手笔试:今年第几天(python版)
1、思路:使用python自带的模块datetime进行计算2、代码:# coding:utf-8;import datetimedtime = list(map(int, input().split()))doy = datetime.datetime(dtime[0], dtime[1], dtime[2])# print(type(doy))print(int(doy.str...原创 2019-08-26 23:21:56 · 262 阅读 · 0 评论 -
华为笔试:输入整型数组和排序标识,对其元素按照升序或降序进行排序(python版)
1、题目描述2、代码# coding:utf-8;"""思路:(1)sort函数的使用,sort函数自定义为升序,即reverse=False,降序即为reverse=True;(2)在处理循环输入,因为题目中提到一组测试用例可能会有多组数据,这里用到while True:try 与except用来循环输入数据;(3)在输出时由于对于list中存储的int型数据时,将list直接转...原创 2019-08-27 11:10:50 · 834 阅读 · 0 评论 -
华为笔试:句子逆序(python版)
1、题目描述2、代码与思路# coding:utf-8;"""思路:将输入的字符写入list中,然后反向输出既可以"""s = input().split()# print(s)for i in range(len(s)-1, -1, -1): print(s[i]+' ', end='')...原创 2019-08-27 15:35:06 · 323 阅读 · 0 评论 -
华为笔试:字串的连接最长路径查找(python版)
1、题目描述2、代码及思路# coding:utf-8;"""思路:将输入的字符写入list中,然后使用sort()函数进行排序,然后输出"""n = int(input())s = []for i in range(n): s.append(input())s.sort()print('\n'.join(s))...原创 2019-08-27 18:56:21 · 244 阅读 · 0 评论 -
华为笔试:图片管理(python版)
1、题目2、代码及思路# coding:utf-8;"""思路:使用python的sort()函数直接排序,说那么多其实就是排序"""while True: try: a = input() a = list(a) a.sort() print(''.join(a)) except: bre...原创 2019-08-27 23:02:29 · 402 阅读 · 0 评论 -
python画图读取rtklib的stat文件中的钟差,可根据自己需有修改相关代码
import osdef read_stat_clk(path, mudi_path):files = os.listdir(path)# print(files)for file in files:final_path = path + ‘\’ + file# print(final_path)if file.find(‘pos’) > 0:filena...原创 2019-07-04 09:06:48 · 2577 阅读 · 5 评论