python问题: AttributeError

python 报错: AttributeError: class BaseEntity has no attribute '__class__'
BaseEntity继承的时候报错没有__class__属性(新手,见谅)

源代码如下:

class BaseEntity:
@classmethod
def load(clazz,index):
return clazz.objects[index]

@classmethod
def loadField(clazz,index,field):
    return getattr(clazz.objects[index], field)


@classmethod
def updateField(clazz,index,field,value):
    obj=clazz.objects[index]
    setattr(obj, field, value)
    obj.save()


@classmethod
def insert(clazz,entity):
    res=clazz.objects(eid=entity.eid)
    if len(res)==0:
        entity.save()
        return True
    else:
        entity.index=res[0].index
        return False

@classmethod
def persist(clazz,entity):
    '''
    :summary :更新id相同的,如果没有则插入
    :param clazz:
    :param entity:
    '''
    queryResult=clazz.objects(eid=entity.eid)
    if len(queryResult)==0:
        entity.save()
    else:
        entity.index=queryResult[0].index
        queryResult[0].delete()
        entity.save()

@classmethod
def delete(clazz,entity):
    queryResult=clazz.objects(eid=entity.eid)
    if len(queryResult)>0:
        queryResult[0].delete()

class Article(Document,BaseEntity):
eid=StringField(max_length=20,required=True)
index=LongField()
title=StringField(default=None)
content=StringField(default=None)
publistDate=DateTimeField(default=None)
wordList=ListField(StringField())
topicVector=ListField(FloatField())

2个回答

zhibengyanlou474
zhibengyanlou474 好像不太一样吧
大约 4 年之前 回复

>>> m=re.match(r'WwW.(.*)..{3}','www.python.org')
>>> m.group(1)
Traceback (most recent call last):
  File "<pyshell#32>", line 1, in <module>
&nbs......
答案就在这里:Python:AttributeError: 问题
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python报错:AttributeError: module 'curses' has no attribute 'wrapper'

windows平台 python3.7.0 在vscode下运行程序时 其中curses.wrapper(main)报错 ``` PS E:\dai ma\aaa> C:/Users/夏洛洛/AppData/Local/Programs/Python/Python37/python.exe "e:/dai ma/aaa/项目/2048.py" Traceback (most recent call last): File "e:/dai ma/aaa/项目/2048.py", line 219, in <module> curses.wrapper(main) AttributeError: module 'curses' has no attribute 'wrapper' ``` 查询了下这个错误,可能是文件名并没有发生冲突,但换文件名后并没有排除。难道是windows平台问题吗? 求解,感激不尽。

Python 爬虫错误:AttributeError: 'NoneType' object has no attribute 'text'

用Python爬虫出现了题目所述的问题,求大神解答以下,救救小白吧,哭了 代码如下: Result=Soup.find('div',class_='tip-text ugc-ellipsis fade-text').text.strip() 错误提示: AttributeError Traceback (most recent call last) <ipython-input-58-c35c7a1014c4> in <module> ----> 1 Result=Soup.find('div',class_='tip-text ugc-ellipsis fade-text').text.strip() AttributeError: 'NoneType' object has no attribute 'text'

python AttributeError: _exit_ 这是什么错误

python AttributeError: _exit_ 这是什么错误

python出现问题:AttributeError: 'str' object has no attribute 'values'

![图片说明](https://img-ask.csdn.net/upload/201905/29/1559097867_501925.png)![图片说明](https://img-ask.csdn.net/upload/201905/29/1559097874_506133.png)

python 使用with con:连接数据库时 报错AttributeError: __enter__怎么解决呢?

# python 使用with con:连接数据库代码如下 import MySQLdb as mdb import sys con=mdb.connect('localhost', 'root', 'mysql', 'test'); with con: cur = con.cursor() # 执行一个查询 cur.execute("SELECT VERSION()") # 取得上个查询的结果,是单个结果 data = cur.fetchone() print("Database version : %s " % data) 运行上面的 程序会报下面的错误: Traceback (most recent call last): File "C:/Users/x'x'x/PycharmProjects/test01/python_mysql/test_mysql.py", line 8, in <module> with con: AttributeError: __enter__ 怎么解决呢?

求助,python 报错:AttributeError: module 'log0' has no attribute 'out'怎么办?

python代码: ``` from downloader import Downloader #, cStringIO, cPickle from threading import Thread from time import sleep import log0 as log from os.path import basename import requests as req import pickle from os.path import exists db='E:/tmp/download.data' def append(obj): try: if exists(db): with open(db,'rb') as f: data=pickle.load(f) else: data={} except: data={} data[obj['url']]=obj with open(db,'wb') as f: pickle.dump(data,f) def load(url): if not exists(db): return None try: with open(db,'rb') as f: data=pickle.load(f) return data.get(url) except: return None def out(msg): print(msg) import time from os.path import basename, exists, getsize from queue import Queue from threading import Lock, Thread, current_thread import requests as req import random as rand import conf class Downloader: KB=1024 MB=KB*KB GB=KB*MB range_size=MB max_workers=10 spd_refresh_interval=1 user_agents=[ 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246', 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1', 'Mozilla/5.0 (Windows NT 6.4; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2225.0 Safari/537.36' 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.93 Safari/537.36', 'Mozilla/5.0 (Windows NT 6.3; rv:36.0) Gecko/20100101 Firefox/36.0' ] chunk_size=KB max_error=0.1 #单线程允许最大出错率 max_error_one_worker=0.5 #仅剩一个线程时允许的最大出错率 home='E:/tmp/' #下载目录 def __init__(self,c): self.__locks={i:Lock() for i in ('file','worker_info','itr_job','download_info')} self.__config=c self.__alive=False self.__fails=Queue() self.__conf=c c=conf.load(c['url']) if c: self.__conf=c self.__init_from_conf() else: self.__init_task() def __init_from_conf(self): self.__download_offset=self.__conf['offset'] for i in self.__conf['fails']: self.__fails.put(i) def __get_agent(self): return self.user_agents[rand.randint(0,len(self.user_agents)-1)] def __init_task(self): headers={'Range':'bytes=0-0'} headers['User-Agent']=self.__get_agent() print(headers) try: r=req.get(self.__conf['url'],headers=headers,stream=True) self.__conf['name'] = basename(self.__conf['url']) or str(int(round(time.time()*1000))) self.__conf['206'] = r.status_code == 206 or r.headers.get('Accept-Ranges')=='bytes' if self.__conf['206']: self.__conf['len']=int(r.headers['Content-Range'].split('/')[-1]) elif r.status_code!=200: log.out('init task err') return else: self.__conf['len']=int(r.headers['Content-Length']) r.close() self.__download_offset=0 self.__conf['init']=True except Exception as e: log.out(e) def __itr_job(self): if self.__locks['itr_job'].acquire(): if not self.__fails.empty(): ans=self.__fails.get() elif self.__download_offset<self.__conf['len']: o=self.__download_offset ans=(o,min(self.__conf['len']-1,o+self.range_size-1)) self.__download_offset+=self.range_size else: ans=(-1,-1) self.__locks['itr_job'].release() return ans def __has_job(self): if self.__locks['itr_job'].acquire(): ans=self.__download_offset<self.__conf['len'] or not self.__fails.empty() self.__locks['itr_job'].release() return ans def __download_no_206(self): headers={'User-Agent':self.__get_agent()} r=req.get(self.__conf['url'],headers=headers,stream=True) self.__download_offset=0 if r.status_code != 200: r.close() self.__stopped() return try: for con in r.iter_content(chunk_size=self.chunk_size): if self.__kill_signal: break self.__file.write(con) l=len(con) self.__down_bytes+=l self.__download_offset+=l t0=time.time() t=t0-self.__last_time if t>=self.spd_refresh_interval: self.__down_spd=self.__down_bytes/t log.out('downspd: %d KB/s'%(self.__down_spd/self.KB)) self.__last_time=t0 self.__down_bytes=0 except: pass r.close() self.__stopped() def __download_206(self): file_len=self.__conf['len'] total=0 error=0 kill=False with req.session() as sess: while True: s,e=self.__itr_job() if s==-1: log.out('no job stop') break headers={'Range':'bytes=%d-%d'%(s,e)} headers['User-Agent']=self.__get_agent() try: r=sess.get(self.__conf['url'],headers=headers,stream=True) total+=1 if r.status_code!=206: self.__fails.put((s,e)) error+=1 if error>self.max_error*total: if self.__locks['worker_info'].acquire(): num=self.__current_workers self.__locks['worker_info'].release() if error>self.max_error_one_worker*total or num>1: break continue for con in r.iter_content(chunk_size=self.chunk_size): if self.__locks['worker_info'].acquire(): if self.__kill_signal: self.__locks['worker_info'].release() kill=True break self.__locks['worker_info'].release() if self.__locks['file'].acquire(): self.__file.seek(s) self.__file.write(con) l=len(con) s+=l self.__locks['file'].release() if self.__locks['download_info'].acquire(): self.__down_bytes+=l t0=time.time() t=t0-self.__last_time if t>=self.spd_refresh_interval: log.out('downspd: %d KB/s'%(self.__down_spd/self.KB)) self.__down_spd=self.__down_bytes/t self.__down_bytes=0 self.__last_time=t0 self.__locks['download_info'].release() if s<=e and s<file_len: self.__fails.put((s,e)) if kill: break except : self.__fails.put((s,e)) error+=1 if error>self.max_error*total: if self.__locks['worker_info'].acquire(): num=self.__current_workers self.__locks['worker_info'].release() if error>self.max_error_one_worker*total or num>1: break self.__stopped() def __start_worker(self,target): if self.__locks['worker_info'].acquire(): if self.__kill_signal: self.__locks['worker_info'].release() return False if self.__current_workers<self.max_workers: Thread(target=target).start() self.__current_workers+=1 log.out('new worker started,current workers %d'%self.__current_workers) self.__locks['worker_info'].release() return True def __start_workers(self): for _ in range(self.max_workers): if not self.__start_worker(self.__download_206): break time.sleep(0.8) def start(self): if self.__alive: log.out('already started!') return if self.__conf.get('status')=='done': log.out('already done') return self.__alive=True self.__kill_signal=False self.__conf['status']='working' self.__down_bytes=0 self.__down_spd=0 self.__last_time=0 self.__current_workers=0 self.__start_time=time.time() try: path=self.home+self.__conf['name'] self.__file=open(path,(exists(path) and 'rb+') or 'wb' ) if not self.__conf['206']: Thread(target=self.__start_workers).start() else: self.__start_worker(self.__download_no_206) log.out('starting done!') except: log.out('starting failed') def stop(self): if self.__kill_signal: return log.out('stopping') if self.__locks['worker_info'].acquire(): self.__kill_signal=True if self.__conf['status']=='working': self.__conf['status']='stopped' self.__locks['worker_info'].release() def __after_stopped(self): if not self.__kill_signal: self.__kill_signal=True __alive=False self.__file.close() log.out('total time: %.2f'%(time.time()-self.__start_time)) self.__conf['offset']=self.__download_offset if not self.__has_job(): self.__conf['status']='done' elif self.__conf.get('status')!='stopped': self.__conf['status']='error' leak=0 ls=[] while not self.__fails.empty(): i=self.__fails.get() leak+=i[1]-i[0]+1 ls.append(i) self.__conf['fails']=ls leak+=max(self.__conf['len']-self.__download_offset,0) log.out('total leak: %d'%leak) conf.append(self.__conf) def __stopped(self): if self.__locks['worker_info'].acquire(): self.__current_workers-=1 log.out('%s stopped'%current_thread().name) if self.__current_workers==0: self.__after_stopped() self.__locks['worker_info'].release() #!/usr/bin/env python # coding=utf-8 #import importlib,sys #import sys #sys.setdefaultencoding('gbk') '''import sys import imp import sys reload(sys) sys.setdefaultencoding('utf8') ''' ''' import sys sys.setdefaultencoding('utf-8') import jieba import json''' def main(): from bs4 import BeautifulSoup import urllib.request import urllib.parse as parse import ssl import re import os,os.path import codecs import requests def getHtml(url): global html page = urllib.request.urlopen(url) html = page.read() return html def file(url1,file_name,name): print(url1) #file(name,save_path,filename) #url1= +'/' + filename url1=url1.encode() #file = open(name ,'wb+') #file.write(url1 ) #file.close() #print(file_name) headers = {'Host': 'https://files.pythonhosted.org/packages/','User-Agent':'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 LBBROWSER','Referer': 'https://pypi.org/', 'Connection': 'keep-alive', 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 LBBROWSER', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Accept-Encoding': 'gzip, deflate, sdch, br', 'Accept-Language': 'zh-CN,zh;q=0.8'} #req = urllib.urlretrieve(download_url,headers=headers) #urllib.request.urlopen('https://www.lfd.uci.edu/~gohlke/pythonlibs/') #req = urllib.request.Request(url=url,headers=header) #request = urllib.request.urlopen(url1) #response = urllib.request.urlopen(request) import socket import urllib.request #设置超时时间为30s socket.setdefaulttimeout(5) #解决下载不完全问题且避免陷入死循环 '''try: urllib.request.urlretrieve(url1.decode(),name) except socket.timeout:''' count = 1 while count <= 1: import time # 格式化成2016-03-20 11:45:39形式 print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) # 格式化成Sat Mar 28 22:24:24 2016形式 print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())) # 将格式字符串转换为时间戳 a = "Sat Mar 28 22:24:24 2016" print(time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))) try: urllib.request.urlretrieve(url1.decode(),name) print('\nchangshi'+str(count)+'over\n') break except socket.timeout: err_info = 'Reloading for %d time'%count if count == 1 else 'Reloading for %d times'%count print(err_info) count += 1 except urllib.error.HTTPError: print('urllib.error.HTTPError') except urllib.error.URLError: print('urllib.error.URLError') except ssl.SSLWantReadError: print('ssl.SSLWantReadError') if count > 1: print("downloading picture fialed!") #urllib.request.urlretrieve(url1.decode(),name) global i i += 1 print(url1.decode()) #file = open(name ,'wt+') #file.write(str(req.content())) #file.close() print(file_name) global x print("Completed : .... %d ..." % x) '''for i in range(len(name_list)): j=0 if name_list[i-24:i+1]=='https://pypi.org/project/': name_list1.append(name_list[i+1:i+60])''' print('\n........'+name+'..........complete\n') '''headers = {'Host': 'download.lfd.uci.edu','User-Agent':'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 LBBROWSER','Referer': 'https://www.lfd.uci.edu/~gohlke/pythonlibs/', 'Connection': 'keep-alive', 'Upgrade-Insecure-Requests': '1', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 LBBROWSER', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Accept-Encoding': 'gzip, deflate, sdch, br', 'Accept-Language': 'zh-CN,zh;q=0.8'} #req = urllib.urlretrieve(download_url,headers=headers) #urllib.request.urlopen('https://www.lfd.uci.edu/~gohlke/pythonlibs/') #req = urllib.request.Request(url=url,headers=header) request = requests.get(url=url1,headers=headers) #response = urllib.request.urlopen(request) global i i += 1 file = open(name ,'wb+') file.write(request.content) file.close() print(file_name) print("Completed : .... %d ..." % x)''' save_path = os.getcwd() url = 'https://www.lfd.uci.edu/' html = getHtml(url) html=''' </li> <li><a id="imagecodecs-lite"></a><strong><a href="https://www.lfd.uci.edu/~gohlke/#python">Imagecodecs-lite</a></strong> (deprecated): a subset of <a href="https://www.lfd.uci.edu/~gohlke/pythonlibs/#imagecodecs">imagecodecs</a>. <ul> <li><a href="javascript:;" onclick=" javascript:dl([101,99,106,112,118,103,115,49,47,119,116,45,104,111,95,51,48,108,105,50,53,101,113,109,97,46,110,121,100], &quot;5B1E23C97AFG4D0&lt;KD05=@A9D:B?B?H6H&gt;6:2J&gt;:I&lt;ID:GIJH8;@&quot;); &quot;javascript: dl(&quot;" title="[1 KB] [Feb 17, 2020]">imagecodecs_lite‑2020.1.31‑py3‑none‑any.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,97,51,110,111,49,45,116,106,101,99,113,105,119,50,108,95,115,48,52,100,118,56,53,47,54,112,103,104,46,57,109], &quot;@=7:IDF6G;N0J893C89@?&gt;;685=A4ML4=L159I1E59I1E5&lt;;2?0NCHBL&lt;K&gt;&quot;); &quot;javascript: dl(&quot;" title="[148 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp38‑cp38‑win_amd64.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,49,47,119,100,46,48,110,99,115,50,104,45,57,51,111,108,113,97,56,112,95,106,109,103,116,105,101,53,118], &quot;89E@CLKH1IFAGJ7&gt;3J78D?IHJ;950&lt;4094=;7C=B;7C=B;2I6=942:?&quot;); &quot;javascript: dl(&quot;" title="[120 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp38‑cp38‑win32.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,99,112,108,105,119,50,109,103,113,110,45,57,55,48,49,115,118,47,100,111,53,51,95,97,104,101,116,54,46,106,52], &quot;?5M81@DJA36G7I0CBI0?F23JI:5=&gt;;L&gt;5LE:01E&lt;:01E&lt;6:439FG6BKNL4H2&quot;); &quot;javascript: dl(&quot;" title="[145 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp37‑cp37m‑win_amd64.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,57,47,55,112,101,49,105,106,115,95,99,51,116,50,110,113,53,45,48,108,97,46,118,119,109,111,104,100,103], &quot;8=7?3F@&lt;16HDL4:IK4:89C6&lt;4A=B50E5=E;A:3;2A:3;2HAG6&gt;;=EGJC&quot;); &quot;javascript: dl(&quot;" title="[118 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp37‑cp37m‑win32.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,115,119,50,54,47,111,112,101,48,105,103,110,100,53,109,99,45,46,97,106,51,52,118,104,95,49,116,108,113,57], &quot;02CL6F=J49&gt;B:7?5&lt;7?0HK9J7@28IMAI2AD@?6D3@?6D3&gt;@19;HB&gt;&lt;3EA1GK&quot;); &quot;javascript: dl(&quot;" title="[137 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp36‑cp36m‑win_amd64.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,50,110,116,51,97,111,104,45,95,57,103,101,99,119,115,105,118,54,108,113,112,100,109,106,49,47,46,53,48], &quot;&gt;0GCD@K2I?F4:;&lt;5E;&lt;&gt;8B?2;70LH9JH0J37&lt;D3A7&lt;D3AF7=?130J=6B&quot;); &quot;javascript: dl(&quot;" title="[112 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp36‑cp36m‑win32.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,53,49,51,113,100,108,47,52,118,54,46,106,105,109,99,57,112,103,97,101,110,115,48,95,104,119,50,45,116,111], &quot;EJ;3@80L6&gt;@206&lt;=BAC&gt;M4C&gt;EG5&lt;LCKJF1?:1J:2K&gt;@20K&gt;@20=KI&lt;DGB=497:IH5&quot;); &quot;javascript: dl(&quot;" title="[133 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp35‑cp35m‑win_amd64.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,46,106,118,49,101,51,109,119,108,47,104,116,53,99,113,50,105,45,100,57,111,112,48,115,95,110,97,103], &quot;G?1&gt;E2&lt;;9=E5&lt;9@6JK4=DB4=GH8@;4A?F3C03?05A=E5&lt;A=E5&lt;6A7@I5?07:8&quot;); &quot;javascript: dl(&quot;" title="[110 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp35‑cp35m‑win32.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,54,118,48,53,115,45,112,116,110,106,51,46,100,108,99,52,109,55,50,105,47,49,104,97,119,113,103,111,101,95,57], &quot;4B9I6137D&gt;6BADC@GJL&gt;K&lt;L&gt;4M=C7L5B2EN;EB;:5&gt;6BA5&gt;6BA@5HC8MG@&lt;0?;HF=&quot;); &quot;javascript: dl(&quot;" title="[145 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp27‑cp27m‑win_amd64.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,115,51,118,57,104,112,50,110,48,103,109,55,95,49,100,108,116,101,106,45,113,53,46,47,111,99,119,97,105], &quot;06BD52E@GI56;GL:K9AIH&gt;AI0&lt;?L@AC68=3F=6F1CI56;CI56;:CJL716FJ4?&quot;); &quot;javascript: dl(&quot;" title="[120 KB] [Dec 04, 2019]">imagecodecs_lite‑2019.12.3‑cp27‑cp27m‑win32.whl</a></li> <li><a href="javascript:;" onclick=" javascript:dl([101,112,116,57,114,103,106,100,122,97,101,115,46,51,111,47,48,105,99,49,108,113,53,50,109,45,118], &quot;:F5D0IE1&gt;@G849A=69A:HC@19HF?B2;BF;&lt;;183;47&quot;); &quot;javascript: dl(&quot;" title="[1.1 MB] [Dec 04, 2019]">imagecodecs‑lite‑2019.12.3.tar.gz</a></li> ''' print('html done') #html.decode('utf-8') #print(html) '''headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1)AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11'} r = requests.get(url, headers = headers) r.encoding = "utf-8" soup = BeautifulSoup(r.text, "html.parser") #html_mod=re.sub(pattern=".",repl=".",string=html.decode('utf-8')) for link in soup.find_all('a'): #soup.find_all返回的为列表 print(link.get('href')) #name_list+=link ''' name_list = html#soup.find_all('a')#re.findall(r']">*-cp38-win_amd64.whl',html.decode('utf-8')) x=1 files=os.listdir(save_path) print(files) print(type(name_list)) name_list=str(name_list) name_list1=[] #print(name_list) #for name in name_list: k=0 # name[k]=str(name1[k]) for i in range(len(name_list)): j=0 if name_list[i-2:i+1]==']">': name_list1.append(name_list[i+1:i+60]) global m if k<len(name_list1): for l in range(len(name_list1[k])): if l-9>=0: if name_list1[k][l-4:l]=='.whl' or name_list1[k][l-3:l]=='.gz' or name_list1[k][l-4:l]=='.zip': j=1 m=l if j==1: name_list1[k]=name_list1[k][0:m] k+=1 '''if j==0: name_list.remove(name)''' #file_name = os.path.join(save_path ,name) i=0 #print(name) print(name_list1) for name in name_list1: j=0 for l in range(len(name)): if l-9>=0: if name[l-4:l]=='.whl' or name[l-3:l]=='.gz' or name[l-4:l]=='.zip': j=1 m=l if j==1: name=name[0:m] k+=1 if name in files: continue '''if name=='Delny‑0.4.1‑cp27‑none‑win_amd64.whl</a></li>\n<li>' or name==Delny‑0.4.1‑cp27‑none‑win32.whl</a></li> </ul> </: continue ''' print('no:'+str(x)) print('\ndownload '+name) # importlib.reload(sys) #imp.reload(sys) for l in range(len(name)): if l-9>=0: if name[l-4:l]=='.whl' or name[l-3:l]=='.gz' or name[l-4:l]=='.zip': j=1 m=l if j==1: name=name[0:m] k+=1 string='https://download.lfd.uci.edu/pythonlibs/s2jqpv5t/' + name#[0:4+name.find('.whl')]#https://download.lfd.uci.edu/pythonlibs/s2jqpv5t/ print('00'+save_path) count=0 v=0 for p in range(len(string)): if string[p]=='\\': if v==0: string=string[:6]+'//'+string[7:] else: string=string[:p]+'/'+string[p+1:] v+=1 if string[p-3:p]=='win': string=string[:p-4]+'-'+string[p-3:] if p<len(string): if (string[p]=='\u2011')==True: if p+1<len(string): string=string[:p]+'-'+string[p+1:] '''if string[p-2]>='0' and string[p-2]<='9' and string[p-1]>='0' and string[p-1]<='9': if (string[p]>='a'and string[p]<='z') or (string[p]>='A'and string[p]<='Z'): string=string[:p]+string[p+1:]''' if p>=len(string): break '''if name[:9]=='ad3‑2.2.1': print('aaa') continue''' conf={'url':string} d=Downloader(conf) d.start() #file(string,save_path,name) x=x+1 print('09'+name_list) print('finished') if __name__ == '__main__': main() ``` 报错: >>> ======================== RESTART: E:\2345Downloads\44.py ======================= Warning: This project has moved to logzero (see https://github.com/metachris/logzero) html done <class 'str'> ['imagecodecs_lite‑2020.1.31‑py3‑none‑any.whl', 'imagecodecs_lite‑2019.12.3‑cp38‑cp38‑win_amd64.whl', 'imagecodecs_lite‑2019.12.3‑cp38‑cp38‑win32.whl', 'imagecodecs_lite‑2019.12.3‑cp37‑cp37m‑win_amd64.whl', 'imagecodecs_lite‑2019.12.3‑cp37‑cp37m‑win32.whl', 'imagecodecs_lite‑2019.12.3‑cp36‑cp36m‑win_amd64.whl', 'imagecodecs_lite‑2019.12.3‑cp36‑cp36m‑win32.whl', 'imagecodecs_lite‑2019.12.3‑cp35‑cp35m‑win_amd64.whl', 'imagecodecs_lite‑2019.12.3‑cp35‑cp35m‑win32.whl', 'imagecodecs_lite‑2019.12.3‑cp27‑cp27m‑win_amd64.whl', 'imagecodecs_lite‑2019.12.3‑cp27‑cp27m‑win32.whl', 'imagecodecs‑lite‑2019.12.3.tar.gz'] no:1 download imagecodecs_lite‑2020.1.31‑py3‑none‑any.whl 00E:\2345Downloads Warning (from warnings module): File "C:\Users\ASUS\AppData\Local\Programs\Python\Python38\lib\site-packages\conf\reader.py", line 39 warnings.warn('cannot parse files of type "%s"' % suffix) UserWarning: cannot parse files of type ".whl" {'Range': 'bytes=0-0', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36'} Traceback (most recent call last): File "E:\2345Downloads\44.py", line 254, in start self.__file=open(path,(exists(path) and 'rb+') or 'wb' ) FileNotFoundError: [Errno 2] No such file or directory: 'E:/tmp/imagecodecs_lite-2020.1.31-py3-none-any.whl' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "E:\2345Downloads\44.py", line 616, in <module> main() File "E:\2345Downloads\44.py", line 606, in main d.start() File "E:\2345Downloads\44.py", line 259, in start except: log.out('starting failed') AttributeError: module 'log0' has no attribute 'out' >>> 求高手解决

ERROR: Failure: AttributeError (module 'sknn' has no attribute 'tests'

运行nosetests -v sknn.test时发生错误 Failure: AttributeError (module 'sknn' has no attribute 'tests') ... ERROR ====================================================================== ERROR: Failure: AttributeError (module 'sknn' has no attribute 'tests') ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/lib/python3.5/dist-packages/nose/failure.py", line 39, in runTest raise self.exc_val.with_traceback(self.tb) File "/usr/local/lib/python3.5/dist-packages/nose/loader.py", line 407, in loadTestsFromName module = resolve_name(addr.module) File "/usr/local/lib/python3.5/dist-packages/nose/util.py", line 322, in resolve_name obj = getattr(obj, part) AttributeError: module 'sknn' has no attribute 'tests' -------------------- >> begin captured logging << -------------------- theano.tensor.blas: WARNING: Using NumPy C-API based implementation for BLAS functions. --------------------- >> end captured logging << --------------------- ---------------------------------------------------------------------- Ran 1 test in 0.001s FAILED (errors=1)

Python AttributeError异常

遇到一个很奇怪的问题,本人刚学习Python ,在学类与对象的方法时,在调用方法时,我的对象名取名为k ,然而死活就是报AttributeError异常; 在反复检查代码无误后,然后我试着改一下名字,奇迹出现了,名字一改就好了,我以为不能使用单个字母,抱着试一试的心态,我将对象名改为a ,奇迹再次出现,成功了!!!规则不是很懂,还请大神指教 ``` class Person: population=0 def __init__(self,name): self.name=name print '(Initializing %s)'%self.name Person.population+=1 def __del__(self): print'%s says bye.'%self.name Person.population-=1 if Person.population==0: print 'I am the last one.' else: print 'There are still %d people left.'% Person.population def sayHi(self): print 'Hi,my name is %s.' % self.name def howMany(self): if Person.population==1: print 'I am the only person here.' else : print 'We have %d persons here.' % Person.population swaroop=Person('swaroop') swaroop.sayHi() swaroop.howMany() # 此处有问题 a=Person('Abdul Kalam') a.sayHi() a.howMany() swaroop.sayHi() swaroop.howMany() ```

Python 程序报错 AttributeError: 'NoneType' object has no attribute 'commit'

Python 程序执行错误 AttributeError: 'NoneType' object has no attribute 'commit' 运行 Python 2.7.5 Mysql 5.7 CentOS 7.2

python AttributeError何解?

以下代码运行出错,什么原因呢? ``` class Test: def prt(self): print(self) print(self.__class__) t = Test() t.prt() ``` AttributeError: 'Test' object has no attribute '_class_'

Python->Pyecharts->Geo在地图中加入自定义的点报错:AttributeError: 'NoneType' object has no attribute 'add'。

Geo在地图中加入自定义的点报错: AttributeError: 'NoneType' object has no attribute 'add' 原码: ``` from example.commons import Faker from pyecharts import options as opts from pyecharts.charts import Geo from pyecharts.globals import ChartType, SymbolType import pandas as pd import json # 链式调用 c = ( Geo() .add_schema(maptype="world") # 加入自定义的点,格式为 .add_coordinate("测试点", 116.39770014211535, 39.90779994986951) # 为自定义的点添加属性 .add("geo", [("测试点", 51)]) .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) .set_global_opts(title_opts=opts.TitleOpts(title="宇宙中心呼唤爱")) ) # 在 html(浏览器) 中渲染图表 c.render() # 在 Jupyter Notebook 中渲染图表 c.render_notebook() ``` 报错: .add_coordinate("测试点", 116.39770014211535, 39.90779994986951) AttributeError: 'NoneType' object has no attribute 'add'

求助:AttributeError: type object 'Topic' has no attribute 'object'

python新手,求助个有关django的问题 django版本:2.1.5 python版本:3.6.0 问题如下: 项目路径\ learning_log 应用路径\learning_logs \learning_log\urls代码: from django.contrib import admin from django.urls import path,include urlpatterns = [ path('admin/', admin.site.urls), path('',include('learning_logs.urls')) ] \learning_logs.urls代码: from django.urls import path from . import views app_name = 'learning_logs' urlpatterns = [ path('',views.index,name='index'), path('topics/',views.topics,name='topics'), ] \learning_logs.views代码: from django.shortcuts import render from .models import Topic,Entry def index(request): return render(request,'learning_logs/index.html') def topics(request): a = Topic.object.order_by('date_added') context = {'topics':a} return render(request,'learning_logs/topics.html',context) \learning_logs.models代码: from django.db import models class Topic(models.Model): text = models.CharField(max_length=200) date_added = models.DateTimeField(auto_now_add=True) def __str__(self): return self.text class Entry(models.Model): topic = models.ForeignKey(Topic,on_delete=models.CASCADE) text = models.TextField() date_added = models.DateTimeField(auto_now_add=True) class Meta: verbose_name_plural = 'entries' def __str__(self): if len(self.text) < 50: return self.text else: return self.text[:50] + '...' 运行网页后: http://127.0.0.1:8000/ 显示如下,正常 Learning Log - Topics Learning Log helps you keep track of your learning, for any topic you're learning about. 运行 http://127.0.0.1:8000/Topic/ 后报错如下: AttributeError at /topics/ type object 'Topic' has no attribute 'object'

Python 3.7 AttributeError: 'str' object has no attribute 'items' 报错怎么解决

![图片说明](https://img-ask.csdn.net/upload/201901/23/1548240235_359645.png) 求大佬帮忙看下这样的报错怎么解决

【菜鸟】Python类方法中AttributeError为什么?

![图片说明](https://img-ask.csdn.net/upload/201909/22/1569157172_706142.png) 在类中,我用__init__初始化属性的时候,用类方法来返回属性值为什么会出现AttributeError,提示我说不存在这个属性。 ![图片说明](https://img-ask.csdn.net/upload/201909/22/1569157356_37899.png) 然而不用__init__,直接去给定类的属性值,却可以正常返回。 求解.

tensorflow :AttributeError: module 'tensorflow' has no attribute 'placeholder'

![图片说明](https://img-ask.csdn.net/upload/201912/23/1577068222_34445.png) I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_100.dll Traceback (most recent call last): File "G:/pycharm/mycode-ZZQ/TensorflowDemo/demo1.py", line 7, in <module> a_ph = tf.placeholder(tf.float32, name='variable_a') AttributeError: module 'tensorflow' has no attribute 'placeholder' 大佬有知道怎么回事嘛,我卸载又安装还是不管用

Python 冰淇淋小店练习出现如下问题:AttributeError: 'IceCreamStand' object has no attribute 'flavors',详见截图,求助大神!!

![图片说明](https://img-ask.csdn.net/upload/202003/14/1584180071_725103.png)

AttributeError: module 'xlwt' has no attribute 'Workbook'急求问题解答

用mypython工具执行data.to_excel(standardizedfile)操作时报错如下: AttributeError: module 'xlwt' has no attribute 'Workbook' 请各位大拿帮忙看看是啥问题 ![图片说明](https://img-ask.csdn.net/upload/202001/07/1578364302_231414.png) 运行结果如下: Traceback (most recent call last): File "F:/mypython/writeExcel.py", line 7, in <module> table = xlwt.Workbook(encoding='utf-8', style_compression=0) AttributeError: module 'xlwt' has no attribute 'Workbook'

新人使用pycharm运行飞机大战项目报如下错误:AttributeError: module 'pygame.image' has no attribute 'get_rect'

看着网上的教学视频一步一步下来,当建立敌机的精灵后,在程序中调用这个精灵时就会报错,单独运行精灵程序时不会报错,在网上也找了相关的资料,但类似的好像也不对; 主程序代码如下: ``` import pygame from plane_sprites import * pygame.init() #创建游戏窗口 480*700 screen = pygame.display.set_mode((480,700)) #绘制背景图像 bg = pygame.image.load("./images/background.png") screen.blit(bg,(0,0)) #绘制英雄的飞机 hero = pygame.image.load("./images/me1.png") screen.blit(hero,(150,400)) #可以在所有绘制工作结束后,统一调度update方法啊 pygame.display.update() #创建时钟对象 clock = pygame.time.Clock() #1.定义rect记录飞机的初始位置 hero_rect = pygame.Rect(150,400,102,126) #创建敌机的精灵 enemy = GameSprite("./images/enemy1.png") enemy1 = GameSprite("./images/enemy1.png",2) #创建敌机的精灵组 enemy_group = pygame.sprite.Group(enemy,enemy1) #游戏循环>意味着游戏正式开始 while True: #1.可以指定循环体内部的代码执行的频率 clock.tick(60) """ #捕获事件 event_list = pygame.event.get() if len(event_list) > 0: print(event_list) """ #事件监听 for event in pygame.event.get(): #判断用户是否点击了关闭按钮 if event.type == pygame.QUIT: print('退出游戏!') pygame.quit() #直接退出系统 exit() #2.修改飞机的位置 hero_rect.y -= 1 #判读飞机的位置 if hero_rect.y <= -126: hero_rect.y = 700 #3.调用blit方法绘制图像 screen.blit(bg,(0,0)) screen.blit(hero,hero_rect) #让精灵族调用两个方法 #update - 让组中的所有精灵都更新位置 enemy_group.update() #draw - 在screen上显示所有的精灵 enemy_group.draw(screen) #4.使用update方法更新显示 pygame.display.update() pygame.quit() ``` 调用的精灵程序如下: ``` import pygame class GameSprite(pygame.sprite.Sprite): """飞机大战精灵""" def __init__(self, image_name, speed=1): #调用父类的初始化方法 super().__init__() #定义对象的属性 self.image = pygame.image.load(image_name) self.rect = pygame.image.get_rect() self.speed = speed def update(self): #在屏幕的垂直方向移动 self.rect.y += self.speed ``` 运行后报如下的错误: AttributeError: module 'pygame.image' has no attribute 'get_rect' ![图片说明](https://img-ask.csdn.net/upload/202002/08/1581141436_82065.png) 还请各位大佬有时间能帮忙看下这个问题我出错在哪里了,谢谢哈

大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了

大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

ArrayList源码分析(入门篇)

ArrayList源码分析 前言: 写这篇博客的主要原因是,在我上一次参加千牵科技Java实习生面试时,有被面试官问到ArrayList为什么查找的速度较快,插入和删除的速度较慢?当时我回答得不好,很大的一部分原因是因为我没有阅读过ArrayList源码,虽然最后收到Offer了,但我拒绝了,打算寒假学得再深入些再广泛些,下学期开学后再去投递其他更好的公司。为了更加深入理解ArrayList,也为

我以为我学懂了数据结构,直到看了这个导图才发现,我错了

数据结构与算法思维导图

String s = new String(" a ") 到底产生几个对象?

老生常谈的一个梗,到2020了还在争论,你们一天天的,哎哎哎,我不是针对你一个,我是说在座的各位都是人才! 上图红色的这3个箭头,对于通过new产生一个字符串(”宜春”)时,会先去常量池中查找是否已经有了”宜春”对象,如果没有则在常量池中创建一个此字符串对象,然后堆中再创建一个常量池中此”宜春”对象的拷贝对象。 也就是说准确答案是产生了一个或两个对象,如果常量池中原来没有 ”宜春” ,就是两个。...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

讲一个程序员如何副业月赚三万的真实故事

loonggg读完需要3分钟速读仅需 1 分钟大家好,我是你们的校长。我之前讲过,这年头,只要肯动脑,肯行动,程序员凭借自己的技术,赚钱的方式还是有很多种的。仅仅靠在公司出卖自己的劳动时...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

玩转springboot启动banner定义所得

最近接手了一个springboot项目,不是不熟悉这个框架,启动时打印的信息吸引了我。 这不是我熟悉的常用springboot的打印信息啊,我打开自己的项目: 还真是的,不用默认的感觉也挺高大上的。一时兴起,就去研究了一下源代码,还正是有些收获,稍后我会总结一下。正常情况下做为一个老程序员,是不会对这种小儿科感兴趣的,不就是一个控制台打印嘛。哈哈! 于是出于最初的好奇,研究了项目的源代码。看到

带了6个月的徒弟当了面试官,而身为高级工程师的我天天修Bug......

即将毕业的应届毕业生一枚,现在只拿到了两家offer,但最近听到一些消息,其中一个offer,我这个组据说客户很少,很有可能整组被裁掉。 想问大家: 如果我刚入职这个组就被裁了怎么办呢? 大家都是什么时候知道自己要被裁了的? 面试软技能指导: BQ/Project/Resume 试听内容: 除了刷题,还有哪些技能是拿到offer不可或缺的要素 如何提升面试软实力:简历, 行为面试,沟通能...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

终于懂了TCP和UDP协议区别

终于懂了TCP和UDP协议区别

你打算用Java 8一辈子都不打算升级到Java 14,真香

我们程序员应该抱着尝鲜、猎奇的心态,否则就容易固步自封,技术停滞不前。

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《经典算法案例》01-08:如何使用质数设计扫雷(Minesweeper)游戏

我们都玩过Windows操作系统中的经典游戏扫雷(Minesweeper),如果把质数当作一颗雷,那么,表格中红色的数字哪些是雷(质数)?您能找出多少个呢?文中用列表的方式罗列了10000以内的自然数、质数(素数),6的倍数等,方便大家观察质数的分布规律及特性,以便对算法求解有指导意义。另外,判断质数是初学算法,理解算法重要性的一个非常好的案例。

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

立即提问
相关内容推荐