python
python相关知识
新生代农民工官方认证码农小拽
实践是检验知识的唯一标准!
展开
-
phthon踩雷(二):UnicodeEncodeError: ‘UCS-2‘ codec can‘t encode characters in position...
报错如下:UnicodeEncodeError: 'UCS-2' codec can't encode characters in position 3298-3298: Non-BMP character not supported in Tk翻译一下就是:Unicode编码错误:'UCS-2’编码器不能编码在3298-3298这个位置的字符类:Non-BMP 字符类在Tk中不被支持。大致就是这么个意思,翻译的不一定准,但是大致意思就是某行代码让编译器出现了问题,不能编译了。解决:俗话说原创 2020-07-08 00:39:09 · 1233 阅读 · 0 评论 -
python的scrapy框架的安装实录
首先要感谢两位博主写的文章的帮助, 这位博主@唐宋缘明卿_cris的帖子很好 的说明了下载顺序, 这位博主@fire_lch316的帖子很好的说明了win10的py3.8下的scracy要怎么装。更详细了。我在这里不做重复性叙述,我就记录一下我成功安装的步骤。我是win10 cmd64 python3.8的环境。准备:先切换到python安装的目录。在该目录出右击空白处,选择opencmdhere打开控制台输入pip --version 或者pip -V来检查pip是不是最新的。注意:以下需要输原创 2020-07-05 17:31:02 · 313 阅读 · 0 评论 -
python练习8:对有道翻译爬取程序的第三次改进之让程序像个正常人
先上代码:import urllib.requestimport urllib.parseimport jsonimport time # 增加引入time模块while True: content = input('输入要翻译的内容(输入'q!'退出翻译): ') def trans(): url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'原创 2020-07-05 02:51:16 · 244 阅读 · 0 评论 -
python练习7:对爬取有道翻译的二次改进之模拟浏览器行为
先上代码:import urllib.requestimport urllib.parseimport jsonwhile True: content = input('输入要翻译的内容: ') def trans(): url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' ''' 添加方法一: head =原创 2020-07-05 02:07:16 · 235 阅读 · 0 评论 -
python练习6:对爬取的有道翻译功能进行改进
先上改进后的代码:import urllib.requestimport urllib.parseimport jsonwhile True: # 实现连续翻译功能 content = input('输入要翻译的内容: ') def trans(): # 把爬虫封装成一个函数 url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' data =原创 2020-07-05 01:15:16 · 310 阅读 · 0 评论 -
python练习5:爬取有道翻译
具体代码如下:import urllib.requestimport urllib.parse # 可以实现url的构造,但是去掉也不影响结果import json # 把获取到的字符串转换成字典的时候需要用到content = input('输入要翻译的内容: ')url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule' # 取network里面找到这个url,把里面的_o去掉,这个是有道的原创 2020-07-05 00:26:30 · 308 阅读 · 0 评论 -
python练习4:Hanoi塔的移动步骤和步数
# 输入汉诺伊塔的层数 输出移动步骤 和总步骤数temp = int(input('输入汉诺伊塔的层数:'))def hanoi(temp, x, y, z): step = 0 if temp == 1: print(x, '→', z) # 把x上的方块移动到z上 step += 1 else: hanoi(temp-1, x, z, y) # 把x上temp-1个方块放到y上 step +原创 2020-07-04 20:45:28 · 1496 阅读 · 0 评论 -
如何解决python的print函数中同时打印不同类型的数据
先看一段代码:# 斐波那契数列 1, 1, 2, 3, 5, 8, 13, ...#输入一个序号数字,打印出对应的数列值。比如输入3,打印出结果2temp = int(input('输入一个正整数: '))def arr(n): if n == 1 or n == 2: return 1 else: return arr(n-1) + arr(n-2)print('序号'+ temp + '对应的数列值是: ' + arr(temp))这原创 2020-07-04 02:02:29 · 2721 阅读 · 0 评论 -
python踩雷(二):递归时遇到TypeError: unsupported operand type(s) for *: ‘int‘ and ‘NoneType‘ 解决
先来看一段递归时的代码:# 递归版阶乘temp = int(input('输入一个正整数: '))def factorial(n): if n == 1: print(1) else: print( n * factorial(n-1))factorial(temp)起初我的想法是,在factorial()函数里,直接用print打印,在后续直接调用函数就可以得到结果了。但是,在实际调用时报错如下: TypeError: unsupport原创 2020-07-04 01:26:40 · 22881 阅读 · 3 评论 -
python练习3:输入分数,输出对应的ABCD级别
while True: # 为了在判断后 可以继续输入 加个循环 scorei = input('请输入分数:') score = int(scorei) # 输入内容是字符串 要先转换成整形 if score >= 90: print('A') elif score >= 80: print('B') elif score >= 60: print('C') else: p原创 2020-07-02 07:16:47 · 5154 阅读 · 0 评论 -
python练习二:猜数字之把自己想的数字变成随机生成的数字
import random # 引入模块secret = random.randint(1, 10) # 随机生成1个1-10的整数i = 1 # i代表猜的次数 初始化为1while i <= 3: # 对猜的过程进行循环 temp = input('猜猜我现在想的哪个数字:\n') # 让用户输入一个数字 guess = int(temp) # 把用户输入的数字转化为整形 if guess == secret: # 输入的数字和生成的数字 进行比较原创 2020-07-02 01:43:02 · 646 阅读 · 0 评论 -
python第一个练习:猜数字游戏
i = 1 # i代表猜的次数 初始化为1while i <= 3: # 对猜的过程进行循环 temp = input('猜猜我现在想的哪个数字:\n') # 让用户输入一个数字 guess = int(temp) # 把用户输入的数字转化为整形 if guess == 8: # 进行判断 print('恭喜你,你在猜第' + str(i) + '次时猜对啦!') # 注意这里的i 要转化成字符串后 才能用加号连接符+原创 2020-07-02 01:28:01 · 485 阅读 · 0 评论 -
python踩雷记录(1)SyntaxError: unindent does not match any outer indentation level
所写代码如下:>>> sites = {1, 2, 3, 1, 4, 2}>>> sites # 去重输出{1, 2, 3, 4}>>> if 1 in sites : print('in') else : SyntaxError: unindent does not match any outer indentation level经过排查,错误原因是:if前面是没有空格的, else前面留了空格。导致EDLE无法识原创 2020-06-30 00:52:46 · 360 阅读 · 0 评论