自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 问答 (1)
  • 收藏
  • 关注

原创 OEM和ODM的区别

ODM是英文Original Design Manufacturer (原始设计制造商)的缩写,指一家厂家根据另一家厂商的要求,为其生产产品和产品配件,亦称为定牌生产或授权贴牌生产,即可代表外委加工,也可代表转包合同加工,国内习惯称为协作生产。OEM是英文original Equipment Manufacturer,又叫定牌生产和贴牌生产,工厂按自己的设计生产产品,某公司贴上自己的牌子直接销售。...

2021-04-07 10:33:23 2160

原创 外部函数调用类方法

class Student: # 定义学生类 def __init__(self,name): self.name = name def get_name(self): return self.name def set_name(self,name): self.name = namedef func(obj): # 外部函数 obj.set_name("吴老师") # 调用了实例的set_name方法#通过传参修

2021-03-21 22:58:39 679

原创 selenium实现自动登录126邮箱,填加联系人并退出

from selenium import webdriverimport timefrom selenium.common.exceptions import TimeoutException, NoSuchElementExceptionimport tracebackdef browser(browser_name): global driver if "chrome".lower() in browser_name: driver = webdriver

2021-01-06 00:14:56 428 1

原创 找出字符串中缺失字母,并按字母顺序排序输出

全字母短句 PANGRAM 是包含所有英文字母的句子,比如:A QUICK BROWN FOX JUMPS OVER THE LAZY DOG. 定义并实现一个方法 get_missing_letter, 传入一个字符串采纳数,返回参数字符串变成一个 PANGRAM 中所缺失的字符。应该忽略传入字符串参数中的大小写,返回应该都是小写字符并按字母顺序排序(请忽略所有非 ACSII 字符)下面示例是用来解释,双引号不需要考虑:(0)输入: “A quick brown fox for jumps over

2021-01-03 06:42:43 575

原创 两种方法把字符串处理成字典

将字符串 “k:1 |k1:2|k2:3|k3:4”,处理成字典 {k:1,k1:2,…}s = "k:1|k1:2|k2:3|k3:4"s1 = s.split("|")d = {}for i in s1: j,k = i.split(":") d[j] = kprint(d) import res = "k:1|k1:2|k2:3|k3:4"keys = re.findall(r"k\d{0,1}",s)values = re.findall(r":(\d)",s

2021-01-03 05:36:20 1793 1

原创 两种方法遍历文件夹下文件

遍历文件夹及文件import osdef print_directory_contents(sPath): """ 这个函数接收文件夹的名称作为输入参数 返回该文件夹中文件的路径 以及其包含文件夹中文件的路径 """ #for files in os.listdir(sPath): filepath = [] for root,dirs,files in os.walk(sPath): #dirs可以不用,但是不能不写 fo

2021-01-03 04:55:45 375

原创 traceback妙用

为什么用traceback?写代码过程中如果有错误,代码会中断,直接在控制台显示错误信息。如果不想代码执行过程中被中断,就要加异常判断try…except…在异常判断try…except…中如果只是print(e),显示的报错信息很少,不知道是哪个函数哪一行出现的错误,排查困难。这时候就用到traceback了,不但提供报错函数,而且显示报错行数,一下就能定位到问题。那么问题来了,traceback.print_exc()跟traceback.format_exc()有什么区别呢?format_e

2020-12-28 10:06:07 290

原创 Python 爬取特定内容的网页并保存

import requestsimport reurl = “https://www.sohu.com”url_list = []crawl_urls=0save_page_num = 0r=requests.get(url)html = r.text#print(html)urls=re.findall(r’href="(.*?)"’,html) #for url in urls:#print(url)#提取到了所有网页上的urlurl=url.strip()#去掉url的前后空格

2020-12-07 00:23:22 604

原创 Selenium、beautifulsoup爬取淘宝数据

import timefrom bs4 import BeautifulSoupimport lxmlimport refrom selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWaitclass Taobao_Infos: def __init__(self): url = 'https://login.taobao.com/member/login.jhtml' self.

2020-11-30 14:24:54 318

原创 Android端自动化小程序--增删账号

import uiautomator2 as u2import timed = u2.connect(‘28084106100000116’)print(d.info)print(d.serial)#前提#python -m uiautomator2 init#python -m weditord.screen_off()time.sleep(3)d.screen_on()time.sleep(3)#d.app_start(‘com.android.tv.settings’)d(r

2020-11-24 22:12:50 165

原创 tkinter实现代码行统计小工具

最终页面如图所示:import osfrom tkinter import * def count_py_line(): dir_path = init_data_entry.get().strip() if not dir_path: init_data_entry.insert(0,'未输入文件路径!') elif not os.path.exists(dir_path): init_data_entry.delete(0,END) init_data_entry.

2020-11-22 02:23:26 213

原创 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引

#给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。class Solution(object): def searchInsert(self, nums, target): for i in range(len(nums)): if nums[i] >= target: return i if target < nums[0]: return 0 else: return len(n

2020-11-17 17:44:12 1739

原创 简单堆栈类+求取两个数组的中位数

写一个简单的堆栈:push(x) – Push element x onto stack.堆栈中放入一个元素pop() – Removes the element on top of the stack.删除最上面的元素top() – Get the top element.获取最上面元素值getMin() – Retrieve the minimum element in the stack.获得堆栈中最小的值class Stack: def __init__(self): self.st

2020-11-17 10:30:53 145

原创 time和datetime区别

#time>>> import time>>> time.time()1605446142.8608499>>> time.localtime(time.time())time.struct_time(tm_year=2020, tm_mon=11, tm_mday=15, tm_hour=21, tm_min=15, tm_sec=58, tm_wday=6, tm_yday=320, tm_isdst=0)>>> tim

2020-11-15 21:29:35 632 2

原创 反转正整数、负整数

#给出一个32位的有符号整数,你需要将这个整数中每位上的数字进行反转#假设我们的环境只能存储得下32位有符号整数,则其数值范围为[-231,231-1],根据假设,反转后整数溢出返回0def reversenum(num): if str(num)[0]=='-' and str(num)[1:].isdigit(): num = '-' + str(num)[1:][::-1] if int(num) < -2**31: retur

2020-11-15 09:24:05 215

原创 求一个字符串中最长的回文子字符串

#双层循环,第一层正序遍历,第二次倒叙遍历,如果首字母和尾字母相同,并且收尾直接的字符是回文,加入list中,排序list,取出最长元素#开始漏了整个字符串是回文的情况,加上第一个if补全所有情况def ispalindrome(s): res = [] if s == s[::-1]: return s for i in range(len(s)): for j in range(-1,-len(s)-1,-1): if s[i] == s[j] and s[i:j+1]==s[i

2020-11-13 20:02:52 88

原创 局部变量和全局变量总结

#如果多个函数需要调用某个函数内变量,需要声明为全局变量,并在函数体外赋初始值#局部变量x,不改变外部x的值def func(x): print('x is', x) x += 2 print('Changed local x to', x) #x是局部变量,只影响函数内部x的值,不影响函数外部x的值x = 50func(x)print('x is still', x)#全局变量x,改变外部变量x的值def func(): global x pri

2020-11-13 19:27:26 89

原创 tkinter之GUI小工具

from tkinter import *import timeimport hashlibimport stringLOG_LINE_NUM = 0def set_init_window(): init_window.title('GUI小工具V1.0') init_window.geometry('290x160+10+10') init_window['bg'] = 'pink' init_window.attributes('-alpha',8.8) de

2020-11-13 17:37:08 138

原创 翻转英文句子,标点位置不变

#翻转句子,标点不变import strings = 'I want!Reverse sentence!'start = end = 0temp = ''for i in range(len(s)): if s[i] in string.punctuation: end = i temp += ' '.join(s[start:end].split()[::-1]) temp += s[i] start = end+1if end != len(s)-1: end = le

2020-11-13 17:23:40 212

原创 三种方式判断字符串是否是回文

#常规方法判断是否回文def ishuiwen(s): temp = '' for i in s: if i.isalpha(): temp+=i.lower() if temp == temp[::-1]: return True return Falses = 'A man, a plan, a canal:Panama's1 = 'race a car'print(ishuiwen(s))print(ishuiwen(s1))#搜到更简洁的方法a =

2020-11-12 10:02:24 2083

原创 session方法获取登录邮箱之后的界面

#使用requests提供的session类来请求登录之后的网站的思路-实例化session-先使用session发送请求,登录对网站,把cookie保存在session中-再使用session请求登录之后才能访问的网站,session能够自动的携带登录成功时保存在其中的cookie,进行请求import requestssession = requests.session()post_url = "https://webmail30.189.cn/w2/"post_data = {"ema

2020-11-10 22:56:57 1287

原创 Requests 爬虫贴吧

import requestsclass TiebaSpider(): def __init__(self,tieba_name): self.url_temp = "https://tieba.baidu.com/f?kw= "+tieba_name + "&ie=utf-8&pn={}" self.tieba_name = tieba_name self.headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win

2020-11-10 19:59:09 668

原创 Requests库get方法之初见

import requestsheaders = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.183 Safari/537.36"}kw = {'wd':'浏览器请求'}temp_url = 'https://www.baidu.com'url = 'https://www.baidu.com/?wd={}'.form

2020-11-10 19:20:40 117

原创 找到列表内连续几个元素相加的和最大

nums = [-2,1,-3,4,-1,2,1,-5,4]subsum=0maxsum=nums[0]for i in range(len(nums)): subsum+=nums[i] if subsum>maxsum: maxsum=subsum if subsum<0: subsum=0print(maxsum)nums = [-2,1,-3,4,-1,2,1,-5,4] sum = max = nums[0]for i in range(len(nu

2020-11-10 16:10:01 179

原创 找出一个字符串中最长不重复子串

#找到字符串中不出现重复字母的最长子串s = 'kajkoigiyeakdjfoiu's= 'pwwkew's = 'asdsfda'res = []for i in range(len(s)): temp = s[i] for j in range(i+1,len(s)): if s[j] not in temp: temp+=s[j] else: break res.append(temp) res.sort(key=len) print(res[-1])

2020-11-10 13:09:46 301

原创 找出列表中出现重复次数最多的字符

#需要考虑出现最多重复字符有多个的情况s = ['e','a','b','a','c','a','d','c','c']count = {}maxnum = 0res = []for i in s: count[i] = s.count(i) for k,v in count.items(): if v > maxnum: maxnum = v res = [] res.append(k) elif v == maxnum: res.append(k)print(

2020-11-09 14:11:32 376

原创 编码、解码、中文编解码

字符串和字符集的关系:字符串是python程序的一种格式字节串是网络传输的一种形式字符串和字节串转换:字符串:str----encode()–>字节串:bytes字节串:bytes----decode()—>字符串:str#ascii字符集是utf-8字符集的前128位字符,可以说ASCII字符集是UTF-8字符集的子集#如果一个字符串中全部为英文(也就是说全是ascii的英文字符)我们可以直接在字符串前面加b就可以了a = ‘this is str’type(a) #st

2020-10-27 17:10:04 392

原创 查找重复的元素--三种方法

#方法一:def repeatNtimes(A): import collections A_dict = collections.Counter(A) A_tuple = sorted(A_dict.items(),key=lambda x:x[1],reverse=True) return A_tuple[0][0] print(repeatNtimes([1,2,3,3])) print(repeatNtimes([2,1,2,5,3,2]))pr

2020-10-21 23:03:48 474

原创 函数基础语法一

函数参数:位置参数、关键字参数,可变长度参数*args,**kwdef foo(who): print('Hello')foo('World')默认参数:必须在位置参数后面def taxMe(cost,rate=0.0825): return cost+(cost+rate)taxMe(100) taxMe(100,0.05)可变长度非关键字参数*args(元组)def func(a,b,*args): suma=0 suma+=a+b for i

2020-10-12 23:31:51 221

原创 正则表达式基础语法1

#1.提取邮件地址mystr=“qqq key:www.baidu.comkey:www.tengxun.com”#未限制贪婪>>> re.findall(r'key:(.*)<br>',mystr)['www.baidu.com<br>key:www.tengxun.com']#?限制贪婪>>> re.findall(r'key:(.*?)<br>',mystr)['www.baidu.com', 'www.teng

2020-10-03 06:38:59 110

原创 普通查找、二分查找、递归查找

#普通查找和查找次数:arr = list(range(100))def findtarget(target): count = 0 for i in range(len(arr)): count += 1 if arr[i]==target: print('普通查找共查找了%s次'%count) return i return False print(findtarget(55)) #二分查找和查找次数:def binaryfound(arr,target): c

2020-09-30 12:43:24 125

原创 多方法解决-买卖股票的最佳时机

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。示例 2:输入: [7,6,4,3,1]输出: 0解释

2020-09-21 23:33:42 60

原创 异或语法学习

异或如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1)运用范围:找列表中只出现一次的数例子一:找到列表中只出现一次的值def Count_Once(lst): res = 0 for i in lst: res^=i return res print(Count_Once([2,2,1]))例子二:找出两个列表的唯一不同元素def findTheD

2020-09-21 23:08:20 101

原创 字符串及长度

#输出字符串最后一个字符的长度s = ‘Show me your code’j = 0for i in s[-1::-1]:if i != ’ ':j += 1else:breakprint(j)#输出一句话中最长单词的第一个单词和长度def longestLetter(s):s = s.split()word = s[0]word_len = len(s[0])for i in s:if len(i)>word_len:word = s[i]word_len = l

2020-09-20 00:09:18 303

原创 计算二进制间距

二进制间距给定一个正整数 N,找到并返回 N 的二进制表示中两个连续的 1 之间的最长距离。如果没有两个连续的 1,返回 0 。示例 1:输入:22输出:2解释:22 的二进制是 0b10110 。在 22 的二进制表示中,有三个 1,组成两对连续的 1 。第一对连续的 1 中,两个 1 之间的距离为 2 。第二对连续的 1 中,两个 1 之间的距离为 1 。答案取两个距离之中最大的,也就是 2 。示例 2:输入:5输出:2解释:5 的二进制是 0b101 。示例 3:输

2020-09-14 22:56:27 331

原创 查找传入字符串中缺少的字符

#查找传入字符串中缺少的字符def get_missing_letter(s):import stringlower_cases = list(string.ascii_lowercase)for i in s:if i.lower().isalpha() and i.lower() in lower_cases:lower_cases.remove(i.lower())return ‘’.join(lower_cases)print(get_missing_letter(’’))prin

2020-09-11 18:32:20 147

原创 Python 列表 切片 文件操作

学习Python已经有四个月了,基础知识学完就开始刷题了,之前没有记录,从今天开始每天记录一下,看看自己的成长轨迹,也可以及时复盘学习中的问题。岁月静好,学习到老!#请按alist中元素的age由大到小排序alist = [{‘name’:‘a’,‘age’:20},{‘name’:‘b’,‘age’:30},{‘name’:‘c’,‘age’:25}]print(sorted(alist,key=lambda x:x[‘age’],reverse=True))#下面代码的输出结果将是什么?lis

2020-09-08 23:30:53 363

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除