利用Python运行结果不全,这是为什么?

初学,利用Python写的代码,运行的时候显示结果不全。

import random

secret = random.randint(1,100)
guess = 0
tries = 0
print("AHOY! I'm the Dread Pirate roberts, and I have a secret!")
print("It is a number from 1 to 99. I'll give you 6 tries.")
while guess != secret and tries < 6:
    guess = int(input("what's yer guess"))
    if guess < secret:
        print("Too low. ye scurvy dog")
    elif  guess > secret:
        print("Too high, landlubber!")
    tries = tries + 1
if guess == secret:
    print("Avast! Ye got it! Found my secret,ye did")
else:
    print("NO more guesses! Better luck next time matey")
    print("The secret number was"),secret
运行以后只显示前三行的语句

1个回答

guess = int(input("what's yer guess"))

这一句的意思是 让你输入 ,你需要输入一个数字才可以对比 在窗口输入一个数字

weixin_44982524
weixin_44982524 谢谢 刚才已经发现了 哈哈哈哈哈我一直以为是对话。。
6 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
求助如何利用Python +selenium实现长网页截图
个人在网上搜到一个利用Chrome headless 无头浏览器截图的方法,但是截出图片为空 代码如下: from selenium import webdriver from selenium.webdriver.chrome.options import Options import time chrome_options = Options() chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-gpu') browser = webdriver.Chrome(options = chrome_options) browser.get('http://www,baidu.com') time.sleep(3) browser.get_screenshot_as_file(r'C:\Users\Desktop\pictures\12.png') 问题1:为什么以上代码运行后截图是空白的?求助 问题2:想利用Chrome Headless实现长网页的截图,该如何截图? 问题3:或者有其他方法实现长网页截图没,例如网址 https://www.so.com/s?q=%E4%BD%A0 ... 1c671edd7b6158708e6 ,若截取屏幕的话,该网页无法完全截图,想完整截图必须得滚动网页。 谢谢!
为什么我在gpu上训练模型但是gpu利用率为0且运行速度还是很慢?
![图片说明](https://img-ask.csdn.net/upload/201906/28/1561670010_563259.png) 为什么我在gpu上训练模型但是gpu利用率为0且运行速度还是很慢? 模型主要利用的是tensorflow和keras 已经安装了tensorflow-gpu和cuda
python爬新浪新闻内容,为什么运行完stock里面为空……
#! /usr/bin/env python #coding=utf-8 from scrapy.selector import Selector from scrapy.http import Request import re,os from bs4 import BeautifulSoup from scrapy.spider import Spider import urllib2,thread #处理编码问题 import sys reload(sys) sys.setdefaultencoding('gb18030') #flag的作用是保证第一次爬取的时候不进行单个新闻页面内容的爬取 flag=1 projectpath='C:\\Users\DELL\\Desktop\\pythonproject\\mypro\\' def loop(*response): sel = Selector(response[0]) #get title title = sel.xpath('//h1/text()').extract() #get pages pages=sel.xpath('//div[@id="artibody"]//p/text()').extract() #get chanel_id & comment_id s=sel.xpath('//meta[@name="comment"]').extract() #comment_id = channel[index+3:index+15] index2=len(response[0].url) news_id=response[0].url[index2-14:index2-6] comment_id='31-1-'+news_id #评论内容都在这个list中 cmntlist=[] page=1 #含有新闻url,标题,内容,评论的文件 file2=None #该变量的作用是当某新闻下存在非手机用户评论时置为False is_all_tel=True while((page==1) or (cmntlist != [])): tel_count=0 #each page tel_user_count #提取到的评论url url="http://comment5.news.sina.com.cn/page/info?version=1&format=js&channel=cj&newsid="+str(comment_id)+"&group=0&compress=1&ie=gbk&oe=gbk&page="+str(page)+"&page_size=100" url_contain=urllib2.urlopen(url).read() b='={' after = url_contain[url_contain.index(b)+len(b)-1:] #字符串中的None对应python中的null,不然执行eval时会出错 after=after.replace('null','None') #转换为字典变量text text=eval(after) if 'cmntlist' in text['result']: cmntlist=text['result']['cmntlist'] else: cmntlist=[] if cmntlist != [] and (page==1): filename=str(comment_id)+'.txt' path=projectpath+'stock\\' +filename file2=open(path,'a+') news_content=str('') for p in pages: news_content=news_content+p+'\n' item="<url>"+response[0].url+"</url>"+'\n\n'+"<title>"+str(title[0])+"</title>\n\n"+"<content>\n"+str(news_content)+"</content>\n\n<comment>\n" file2.write(item) if cmntlist != []: content='' for status_dic in cmntlist: if status_dic['uid']!='0': is_all_tel=False #这一句视编码情况而定,在这里去掉decode和encode也行 s=status_dic['content'].decode('UTF-8').encode('GBK') #见另一篇博客“三张图” s=s.replace("'",'"') s=s.replace("\n",'') s1="u'"+s+"'" try: ss=eval(s1) except: try: s1='u"'+s+'"' ss=eval(s1) except: return content=content+status_dic['time']+'\t'+status_dic['uid']+'\t'+ss+'\n' #当属于手机用户时 else: tel_count=tel_count+1 #当一个page下不都是手机用户时,这里也可以用is_all_tel进行判断,一种是用开关的方式,一种是统计的方式 #算了不改了 if tel_count!=len(cmntlist): file2.write(content) page=page+1 #while loop end here if file2!=None: #当都是手机用户时,移除文件,否则写入"</comment>"到文件尾 if is_all_tel: file2.close() try: os.remove(file2.name) except WindowsError: pass else: file2.write("</comment>") file2.close() class DmozSpider(Spider): name = "stock" allowed_domains = ["sina.com.cn"] #在本程序中,start_urls并不重要,因为并没有解析 start_urls = [ "http://news.sina.com.cn/" ] global projectpath if os.path.exists(projectpath+'stock'): pass else: os.mkdir(projectpath+'stock') def parse(self, response): #这个scrapy.selector.Selector是个不错的处理字符串的类,python对编码很严格,它却处理得很好 #在做这个爬虫的时候,碰到很多奇奇怪怪的编码问题,主要是中文,试过很多既有的类,BeautifulSoup处理得也不是很好 sel = Selector(response) global flag if(flag==1): flag=2 page=1 while page<260: url="http://roll.finance.sina.com.cn/finance/zq1/index_" url=url+str(page)+".shtml" #伪装为浏览器 user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' headers = { 'User-Agent' : user_agent } req = urllib2.Request(url, headers=headers) response = urllib2.urlopen(req) url_contain = response.read() #利用BeautifulSoup进行文档解析 soup = BeautifulSoup(url_contain) params = soup.findAll('div',{'class':'listBlk'}) if os.path.exists(projectpath+'stock\\'+'link'): pass else: os.mkdir(projectpath+'stock\\'+'link') filename='link.txt' path=projectpath+'stock\\link\\' + filename filelink=open(path,'a+') for params_item in params: persons = params_item.findAll('li') for item in persons: href=item.find('a') mil_link= href.get('href') filelink.write(str(mil_link)+'\n') #递归调用parse,传入新的爬取url yield Request(mil_link, callback=self.parse) page=page+1 #对单个新闻页面新建线程进行爬取 if flag!=1: if (response.status != 404) and (response.status != 502): thread.start_new_thread(loop,(response,))
关于如何将Python程序交叉编译至Arm运行的问题
背景:Ubuntu-Linux操作系统,使用Python和PyQt5编写了一款界面软件,利用Pyinstaller打包至Arm-Linux操作系统运行,但是报错:不能执行二进制文件。 问题:由于开发环境是x86的cpu,运行环境的arm的cpu,则移植时需要交叉编译。请问如何将x86系统上开发的软件移植过去呢?如何进行交叉编译呢? (网上有人说将Python和用到的第三方库全部在Arm-Linux上进行交叉编译,这就相当于在Arm-Linux上建立了一个开发环境了,请问有没有方法在x86系统上将软件交叉编译好,复制到Arm-Linux系统上即可直接运行?)
答复:python中解决孪生素数?
题目:3、 利用上题中判断素数的函数,编写程序找出1~100之间的所有孪生素数(若两个素数之差为2,则这两个素数就是一对孪生素数)。例如:3和5、5和7、11和13等都是孪生素数。 以下是我自己写的代码: def isprime(n): import math a=int(math.sqrt(n))+1 for i in range(2,a): if n%i==0: flag=False return flag def main(): flag=True for n in range(1,101): primelist=[] if flag: primelist.append(n) for b in range(0,len(primelist)): if primelist[b+1]-primelist[b]==2: print(primelist[b+1],primelist[b]) main() 运行后,提示我:list index out of range 我不会改,求教
WIN10利用pyinstaller将Python3.6文件打包成exe程序如何在WIN7上运行
写的是一个输入txt文件路径,然后用matplotlib把这个txt里的值画出来的程序, 用pyinstaller生成exe,在WIN7上运行不出来
python:maximum recursion depth深度递归
代码在未打包成可执行文件exe之前,一切运行都没问题 之后利用cxfreeze打包成可执行文件exe,就报了RuntimeError: maximum recursion depth exceeded while calling a Python object这个错误,不知道为什么,求帮忙指导下
基于ARM运行Linux操作系统,终端运行文件报错:cannot execute binary file
1、硬件系统:Zynq开发板,ARM架构运行arm-linaro-ubuntu操作系统(32-bit) 2、软件:自己利用Python和PyQt写的一个简单的软件,最后利用Pyinstaller进行打包,在我做开发的电脑(也是32-bit,也是ubuntu系统)上成功打包运行 3、问题:打包后由开发电脑向Zynq开发板移植后,在终端运行打包后的文件,报错:cannot execute binary file 请问问题出在哪里呢?
python提示ImportError: cannot import name 'device'
求救,求救 最近打算用python来做Uiautomator UI测试 刚运行时就报 ImportError: cannot import name 'device'错误 备注: python用的是3.4版本 利用pip install uiautomator命令安装的
python 爬虫利用urllib.request.urlretrieve() 保存图片在本地,图片没有内容
我用Jupyter Notebook爬取了需要保存的图片的url,但是利用urllib.request.urlretrieve() 将图片保存到本地,图片没有内容,该url使用360浏览器打开也是没有内容的图片(和我保存在本地一样),但是用goole打开就是正常的图片。 相关代码 url='http://www.jj20.com/bz/zrfg/d...' response=urllib.request.urlopen(url) html=response.read().decode('gb2312') soup=BeautifulSoup(html,'lxml') data=soup.select('body > div.wzfz.top-main.fix > div > ul.pic2.vvi.fix') data2=re.findall('src="(.+?)" width',str(data)) data2 #此处得到了图片链接的一个列表 ![图片说明](https://img-ask.csdn.net/upload/201812/21/1545361931_226911.png) x=0 for itemm in data2: print(itemm) urllib.request.urlretrieve(itemm,'C:\\Users\\Administrator\\Desktop\\pachong2\\%s.jpg'%x) x+=1 #通过链接保存图片到本地 代码完毕,运行不报错,但保存的图片却是加密图片,如下 ![图片说明](https://img-ask.csdn.net/upload/201812/21/1545361949_493100.png)我用360浏览器打开这些url也是显示这个,但是用goole打开就是正常的图片。如下: ![图片说明](https://img-ask.csdn.net/upload/201812/21/1545361998_909451.png) 我百度了好多相关内容,但和别人的出错结果都不一样,想知道这种情况是怎么回事,为什么360浏览器打开是这样的,还有就是要怎么才能通过goole浏览器把图片下载下来呢。
求解 我利用Django中的命令:migrate 结果显示找不到此文件
求解 我利用Django中的命令:python manage.py migrate 结果 can't open file 'manage.pymigrate': [Errno 2] No such file or directory 请问如何解决?已经有环境了,在Mac终端运行的
如何把Python的.py文件转为DLL文件用于调用呢?
我是一枚Python新手,现在手上有一个python的Test.py文件,一个利用cython生成C的setup.py文件,通过命令行生成Test.c文件。 然后应该就可以使用.def文件生成dll文件了,但运行后,会有关于def文件中我方法名的报错:外部无法解析的外部符号。但方法名和我原py文件的方法名是一致的,为什么会报错呢? 或者有其他转dll的好办法吗?详细一些的,谢谢了。
Pycuda中gpuarray.to_gpu能向共享GPU内存中申请空间吗
GPU信息 ![GPU信息](https://img-ask.csdn.net/upload/202001/06/1578293738_135954.png) ![GPU信息](https://img-ask.csdn.net/upload/202001/06/1578293671_541491.png) --------------------------------------------- 运行如下代码 比较两个矩阵,取最大值为一个新矩阵 ``` import pycuda.driver as drv import pycuda.autoinit import numpy import numpy.linalg as la from pycuda import driver, compiler, gpuarray, tools from pycuda.compiler import SourceModule import os if (os.system("cl.exe")): os.environ['PATH'] += ';'+r"C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\amd64\\" if (os.system("cl.exe")): raise RuntimeError("cl.exe still not found, path probably incorrect") a = numpy.random.randint(0,3,(23600,26919)).astype(numpy.float32) b = numpy.random.randint(1,4,(23600,26919)).astype(numpy.float32) a_gpu = gpuarray.to_gpu(a) b_gpu = gpuarray.to_gpu(b) result_array_GPU = gpuarray.maximum(a_gpu,b_gpu) print(a_gpu.get()) print(b_gpu.get()) print(result_array_GPU,type(result_array_GPU.get())) ``` --- 出现错误 out of memory ![图片说明](https://img-ask.csdn.net/upload/202001/06/1578293792_715378.png) --- 查看GPU性能,发现_**共享GPU内存**_还有空间,请问能利用这一块内存吗?如何利用这一块的内存呢 ![图片说明](https://img-ask.csdn.net/upload/202001/06/1578293948_284767.png) ---- 网上看说可以去BOIS总结去设置大小,也有的说当专有GPU内存不够会向共享自动申请 具体我还要怎么操作呢,还请不吝赐教
python如何自定义权重损失函数?
我利用keras的神经网络训练一个模型,被训练的数据是一个很大的二维数组,每一行是一个类别,总共有3种类别。被训练出的模型中包括3种类别(暂且称为A,B,C)。现在B类的预测准确率太高了,而A和C类的预测准确率较低,我想在把B类准确率适当减低的情况下来提高A和C类的预测准确率。请问该怎么操作? 代码如下,我从网上查了一些代码,自己不是特别明白,尝试后,出现了错误。请问该如何修改?下面添加的图片中被划红线圈住的代码是添加上去的,最终运行出错了,请问怎么修改,或者重新帮我写一个权重损失代码代码,跪谢 def custom_loss_4(y_true, y_pred, weights): return K.mean(K.abs(y_true - y_pred) * weights) model = models.Sequential() model.add(layers.Dense(200, activation = "relu", input_shape = (1175, ))) weights = np.random.randn(*X_train.shape) weights_tensor = Input(shape=(3,)) cl4 = partial(custom_loss_4,weights=weights_tensor) model.add(layers.Dropout(0.7)) model.add(layers.Dense(100, activation = "relu")) model.add(layers.Dropout(0.5)) model.add(layers.Dense(3, activation = "softmax")) model.compile(optimizer = "rmsprop", loss = cl4, metrics = ["accuracy"]) model.summary() ![图片说明](https://img-ask.csdn.net/upload/201910/13/1570937131_951272.jpg) ![图片说明](https://img-ask.csdn.net/upload/201910/13/1570936461_762097.png) ![图片说明](https://img-ask.csdn.net/upload/201910/13/1570936605_599703.png) 补充一下:我在前面对数据做过了不平衡调整,定义的函数如下: def calc_class_weight(total_y): my_class_weight = class_weight.compute_class_weight("balanced", np.unique(total_y), total_y) return my_class_weight
如何基于C++运行并实时传参给一个PyQt窗口?
我有一个基于PyQt的python脚本,希望利用Python提供的API在C++来运行它。 这个脚本里是一个在QApplication里的QMainWindow,由于不能打断QApplication,我把它放在python的子线程里,通过调用python主线程中函数来发送signal给slot传参。 <p align=center> <img src="https://img-ask.csdn.net/upload/201904/07/1554638640_196895.png" height="500" style="border: 10px solid white"> <p> 我的问题是:由于python主进程一缺少命令运行就不会激活,而子进程中的窗口也会处在无响应的状态,我现在只能在主进程中使用sleep保持python依然运行,C++只能等待睡眠结束后再发送信息给窗口。,这样又会引起窗口的延迟。 有没有什么办法避免使用sleep,实时控制这样的PyQt主窗口,又不影响他的运行?
python+selenium如何隐藏chromdriver.exe窗口?
初学python,利用selenium写了一个简单的自动登录校园网的脚本,chrome浏览器驱动已经采用了无头模式,问题在于运行过程中,chromedriver的窗口一直显示,不方便进行其他的操作,在网上搜了半天,也没能找到解决办法,所以特来问询。 需要隐藏的窗口如下:![图片说明](https://img-ask.csdn.net/upload/201809/24/1537797541_285397.png)
为什么flask启动方式影响项目投票功能运行结果?
  前两天跟着视频写了个flask投票功能代码,利用长轮询实现票数实时更新,结果不是我想要的结果,票数总是等到夯住超时才能更新,通过浏览器F12键网络追踪,发现点击投票也能立即响应,但原先夯住的线程继续被夯住。又从网上找的投票功能代码,尝试还是如此,坑了很久才知道是启动方式不同引起的。因为我是在已经有的项目中加的投票功能,而这个项目调试启动是命令行:python manage.py runserver,结果就出现以上问题。没办法将它分离出来,单独运行又正常,后来再加上Manager,使用命令行启动python manage.py runserver,还是不能实时更新票数。发现只要不是Manager托管启动就没问题,实在不知什么原因?请大神指点。 manage.py: ``` from flask import Flask, render_template, session, request, jsonify import queue import uuid from flask_script import Manager app = Flask(__name__) app.secret_key = str(uuid.uuid4()) manager=Manager(app) USERS = { '1': {'name': '小黑', 'count': 1}, '2': {'name': '小胖', 'count': 0}, '3': {'name': '小铁锤', 'count': 0}, } QUEUE_DICT = { # 'uuid': Queue()队列 格式 } @app.route("/user/list") def user_list(): user_uuid = str(uuid.uuid4()) # 生成用户随机字符串 QUEUE_DICT[user_uuid] = queue.Queue() # 引用队列消息 session["current_user_uuid"] = user_uuid # session存放uuid字符串 return render_template("vote.html", users=USERS) @app.route("/vote", methods=["POST"]) def vote(): uid = request.form.get('uid') # 获取uuid值 USERS[uid]['count'] += 1 # 让字典中的值自增 for q in QUEUE_DICT.values(): # 循环获取队列中的值并添加到USERS q.put(USERS) return "投票成功" @app.route("/get/vote", methods=["get"]) def get_vote(): user_uuid = session["current_user_uuid"] # 获取session中的存储的uuid值 q = QUEUE_DICT[user_uuid] # 获取字典中uuid对应的Q() ret = {"status": True, "data": None} # 返回状态码 try: users = q.get(timeout=5) # 异常就夯(hang)住5秒 ret["data"] = users except queue.Empty: ret["status"] = False return jsonify(ret) if __name__ == '__main__': manager.run() ``` vote.html: ``` <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width initial-scale=1.0"> <title>Title</title> <style> li{cursor: pointer; background-color: dodgerblue; margin: 10px; padding: 10px; list-style-type: none; text-align: center; font-size: 18px; } </style> </head> <body> <ul id="userList"> {% for key, val in users.items() %} <li uid="{{ key }}">{{ val.name }}({{ val.count }})</li> {% endfor %} </ul> <script src="https://cdn.bootcss.com/jquery/3.3.0/jquery.min.js"></script> <script> // 给后台提交点击增加请求 $(function(){ $("#userList").on("click", "li", function () { var uid = $(this).attr("uid"); // 找到id $.ajax({ url: "/vote", type: "POST", data: {uid:uid}, success:function (arg) { console.log(arg); } }) }); get_vote(); // 清空页面显示增加数据 }); // 获取投票信息 function get_vote(){ $.ajax({ url: "/get/vote", type: "GET", dataType: "JSON", // 获取json的数据格式 success:function (arg) { if(arg.status){ $("#userList").empty(); // 清空页面 $.each(arg.data, function (k, v) { // 循环 var li = document.createElement("li"); // 生成li标签 li.setAttribute("uid", k); // 设置属性uid=k li.innerText = v.name + "(" + v.count + ")"; // 拼接内容 $("#userList").append(li); }) } get_vote(); // 和前面的调用形成循环 } }) } </script> </body> </html> ```
利用python中的mangers和queue模块做一个两个电脑通信的demo,却说没有register这个属性
talkDemo_1 ``` import queue,time from multiprocessing.managers import BaseManager from datetime import datetime message1 = queue.Queue() message2 = queue.Queue() class QueueManager(BaseManager): pass def get_message1(): global message1 return message1 def get_message2(): global message2 return message2 QueueManager.register('message_queue_1',callable = get_message1) QueueManager.register('message_queue_2',callable = get_message2) def startManager(host,port,key): manager = QueueManager(address = (host,port),authkey = key) manager.start() return manager if __name__ == '__main__': manager = startManager('127.0.0.1', 5000, b'abc') mess1 = manager.message_queue_1() mess2 = manager.message_queue_2() #mess1.put(1) #mess2.get() name = input('请输入您的昵称:') print('可以开始通信了!') while(True): inform = input() if inform == 'over': mess1.put(inform) time.sleep(5) break inform = '%s\n\t%s:%s' % (datetime.now(),name,inform) mess1.put(inform) print(inform) getInform = mess2.get() print(getInform) manager.shutdown() print('结束通话') ``` talkDemo_2.py ``` import queue from multiprocessing.managers import BaseManager from datetime import datetime def QueueManager(BaseManager): pass QueueManager.register('message_queue_1') QueueManager.register('message_queue_2') def connectManager(addr,port,key): manager = QueueManager(address = (addr, port), authkey = key) manager.connect() return manager if __name__ == '__main__': addr = '127.0.0.1' print('connect to %s...' % addr) manager = connectManager(addr,5000,b'abc') mess1 = manager.message_queue_1() mess2 = manager.message_queue_2() #mess1.get() #mess2.put(1) name = input('请输入您的昵称:') print('已连接,可以开始通信了!') while(True): getInform = mess1.get() print(getInform) if getInform == 'over': break inform = input() inform = '%s\n\t%s:%s' % (datetime.now(),name,inform) print(inform) mess2.put(inform) print('通话结束') ``` 运行talkDemo_2.py的时候,报错Traceback (most recent call last): File "E:\Python_program\practice\talkDemo_2.py", line 8, in <module> QueueManager.register('message_queue_1') AttributeError: 'function' object has no attribute 'register'
python3爬虫百度图片,结果只能显示60张,后面都是重复
python初学,不太懂哪里出了问题,运行之后显示搜到1020张图片,下载后前60张没有问题,后面就都是和前面一样,仔细一看,在第60张后面的程序又显示了找到关键词,正在下载。于是只能爬60张图片,求大佬们看一下什么情况 ![图片说明](https://img-ask.csdn.net/upload/201901/07/1546856286_507280.jpg)![图片说明](https://img-ask.csdn.net/upload/201901/07/1546856296_484616.jpg) ``` #coding=utf-8 import re import requests from urllib import error from bs4 import BeautifulSoup import os num = 0 numPicture = 0 file = '' List = [] def Find(url): global List print('正在检测图片总数,请稍等.....') t = 0 i = 1 s = 0 while t < 1000: Url = url + str(t) + '&gsm=8c' try: Result = requests.get(Url, timeout=7) except BaseException: t = t+60 continue else: result = Result.text pic_url = re.findall('"objURL":"(.*?)",', result, re.S) # 先利用正则表达式找到图片url s += len(pic_url) if len(pic_url) == 0: break else: List.append(pic_url) t = t + 60 return s def recommend(url): Re = [] try: html = requests.get(url) except error.HTTPError as e: return else: html.encoding = 'utf-8' bsObj = BeautifulSoup(html.text, 'html.parser') div = bsObj.find('div', id='topRS') if div is not None: listA = div.findAll('a') for i in listA: if i is not None: Re.append(i.get_text()) return Re def dowmloadPicture(html, keyword): global num pic_url = re.findall('"objURL":"(.*?)",', html, re.S) # 先利用正则表达式找到图片url print('找到关键词:' + keyword + '的图片,即将开始下载图片...') for each in pic_url: print('正在下载第' + str(num + 1) + '张图片,图片地址:' + str(each)) try: if each is not None: pic = requests.get(each, timeout=10) else: continue except BaseException: print('错误,当前图片无法下载') continue else: string = file + r'\\' + keyword + '_' + str(num) + '.jpg' fp = open(string, 'wb') fp.write(pic.content) fp.close() num += 1 if num >= numPicture: return if __name__ == '__main__': # 主函数入口 word = input("请输入搜索关键词(可以是人名,地名等): ") url = 'http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word='+word+'&ct=201326592&v=flip' tot = Find(url) Recommend = recommend(url) # 记录相关推荐 print('经过检测%s类图片共有%d张' % (word, tot)) numPicture = int(input('请输入想要下载的图片数量 ')) file = input('请建立一个存储图片的文件夹,输入文件夹名称即可') y = os.path.exists(file) if y == 1: print('该文件已存在,请重新输入') file = input('请建立一个存储图片的文件夹,输入文件夹名称即可') os.mkdir(file) else: os.mkdir(file) t = 0 while t < numPicture: try: url = url + str(t) + '&gsm=8c' result = requests.get(url, timeout=10) except error.HTTPError as e: print('网络错误,请调整网络后重试') else: dowmloadPicture(result.text, word) finally: t = t+60 print('当前搜索结束,感谢使用') print('猜你喜欢') for re in Recommend: print(re, end=' ') ```
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
使用 Docker 部署 Spring Boot 项目
Docker 技术发展为微服务落地提供了更加便利的环境,使用 Docker 部署 Spring Boot 其实非常简单,这篇文章我们就来简单学习下。首先构建一个简单的 S...
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
redis分布式锁,面试官请随便问,我都会
文章有点长并且绕,先来个图片缓冲下! 前言 现在的业务场景越来越复杂,使用的架构也就越来越复杂,分布式、高并发已经是业务要求的常态。像腾讯系的不少服务,还有CDN优化、异地多备份等处理。 说到分布式,就必然涉及到分布式锁的概念,如何保证不同机器不同线程的分布式锁同步呢? 实现要点 互斥性,同一时刻,智能有一个客户端持有锁。 防止死锁发生,如果持有锁的客户端崩溃没有主动释放锁,也要保证锁可以正常释...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Java世界最常用的工具类库
Apache Commons Apache Commons有很多子项目 Google Guava 参考博客
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC...
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
Android 9.0 init 启动流程
阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、启动流程概述一、 启动流程概述Android启动流程跟Linux启动类似,大致分为如下五个阶段。1.开机上电,加载固化的ROM。2.加载BootLoader,拉起Android OS。3.加载Uboot,初始外设,引导Kernel启动等。...
相关热词 c# clr dll c# 如何orm c# 固定大小的字符数组 c#框架设计 c# 删除数据库 c# 中文文字 图片转 c# 成员属性 接口 c#如何将程序封装 16进制负数转换 c# c#练手项目
立即提问

相似问题

3
python+selenium如何隐藏chromdriver.exe窗口?
2
python环境,利用selenium爬取京东手机“每种套餐”价格问题
2
用ctypes向dll传入的数组,返回python后,其中的数据有时正确有时错误,怎么办?
0
一道python实现简单编译器的问题
1
python 爬虫利用urllib.request.urlretrieve() 保存图片在本地,图片没有内容
1
python3爬虫百度图片,结果只能显示60张,后面都是重复
1
WIN10利用pyinstaller将Python3.6文件打包成exe程序如何在WIN7上运行
1
splinter中利用 .fill( ) .find_by_id( )等函数进行查找, 却显示找不到html中存在的元素?为什么
1
如何把Python的.py文件转为DLL文件用于调用呢?
1
在ubuntu环境中安装jupyter notebook,运行时启动不了浏览器
1
利用python中的mangers和queue模块做一个两个电脑通信的demo,却说没有register这个属性
3
基于ARM运行Linux操作系统,终端运行文件报错:cannot execute binary file
0
关于如何将Python程序交叉编译至Arm运行的问题
1
如何基于C++运行并实时传参给一个PyQt窗口?
3
求助如何利用Python +selenium实现长网页截图
2
python爬虫的奇葩错误,socket.gaierror: [Errno 11001] getaddrinfo failed
0
keras利用callback获取的每个batch的acc数据精度不足
0
为什么flask启动方式影响项目投票功能运行结果?
2
用tensorflow做机器翻译时训练代码有问题
2
为什么我在gpu上训练模型但是gpu利用率为0且运行速度还是很慢?