Python
weixin_48640346
这个作者很懒,什么都没留下…
展开
-
外部函数调用类方法
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 · 684 阅读 · 0 评论 -
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 · 456 阅读 · 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 · 588 阅读 · 0 评论 -
两种方法把字符串处理成字典
将字符串 “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 · 1819 阅读 · 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 · 381 阅读 · 0 评论 -
traceback妙用
为什么用traceback?写代码过程中如果有错误,代码会中断,直接在控制台显示错误信息。如果不想代码执行过程中被中断,就要加异常判断try…except…在异常判断try…except…中如果只是print(e),显示的报错信息很少,不知道是哪个函数哪一行出现的错误,排查困难。这时候就用到traceback了,不但提供报错函数,而且显示报错行数,一下就能定位到问题。那么问题来了,traceback.print_exc()跟traceback.format_exc()有什么区别呢?format_e原创 2020-12-28 10:06:07 · 314 阅读 · 0 评论 -
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 · 627 阅读 · 0 评论 -
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 · 342 阅读 · 0 评论 -
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 · 189 阅读 · 0 评论 -
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 · 237 阅读 · 0 评论 -
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引
#给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。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 · 1755 阅读 · 0 评论 -
简单堆栈类+求取两个数组的中位数
写一个简单的堆栈: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 · 174 阅读 · 0 评论 -
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 · 701 阅读 · 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 · 242 阅读 · 0 评论 -
求一个字符串中最长的回文子字符串
#双层循环,第一层正序遍历,第二次倒叙遍历,如果首字母和尾字母相同,并且收尾直接的字符是回文,加入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 · 100 阅读 · 0 评论 -
局部变量和全局变量总结
#如果多个函数需要调用某个函数内变量,需要声明为全局变量,并在函数体外赋初始值#局部变量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 · 112 阅读 · 0 评论 -
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 · 149 阅读 · 0 评论 -
找到列表内连续几个元素相加的和最大
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 · 214 阅读 · 0 评论 -
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 · 137 阅读 · 0 评论 -
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 · 689 阅读 · 0 评论 -
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 · 1297 阅读 · 0 评论 -
翻转英文句子,标点位置不变
#翻转句子,标点不变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 · 219 阅读 · 0 评论 -
三种方式判断字符串是否是回文
#常规方法判断是否回文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 · 2109 阅读 · 0 评论