基础学习问题及解答

1.出现ImportError: No module named requests错误,就是第一次导入requests模块,报的错。
解决办法:1.先进入python安装目录下的scripts文件夹,C:\Python27\Scripts。2.运行pip3 install requests命令,因为我目录下只有pip,我就运行了pip install requests命令,然后就可以了。
查考资料:https://stackoverflow.com/questions/17309288/importerror-no-module-named-requests

2.str和int类型的拼接:
直接利用+拼接会报出TypeError: cannot concatenate 'str' and 'int' objects的错误,就是str与int类型无法直接拼接。

python中内置的方法:
chr()函数将0-255的整数值转换为单个ASCII字符
ord()函数返回单个字符的ASCII值
int()函数尝试将字符串按字面意思转换成为整数,比如int('100')返回整数值100
str()函数将整数值转换为字符串,比如str(100)返回字符串'100'

代码示例:

num = random.randint(1,100)
print '猜错了,应该是'++str(num)+'哦'

这样就可以拼接了。

3.python中的引用和拷贝:
参考这篇文章http://blog.csdn.net/huaweitman/article/details/9492615
大致就是说a = b 这样的引用因为a和b指向同一个地址,改变其中一个另一个也会改变,而拷贝之后改变a或b其中一个,另一个不受影响。

4.Linux下运行./hello.py报Error:no such file "hello python"错
解决方法:可能是python代码没有首行没有加上''#! usr/bin/python'',
其中#!/usr/bin/Python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器;
而#!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。当系统看到这一行的时候,首先会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。#!/usr/bin/python相当于写死了python路径;#!/usr/bin/env python会去环境设置寻找python目录,推荐这种写法

5.Ubuntu下退出ipython界面,用quit命令
参考文章:http://blog.csdn.net/wh_19910525/article/details/8040494
退出python环境,用exit()

6.程序小白的Python连接Mysql全过程记录:
https://www.douban.com/note/560439959/
对于pymysql的安装windows下可以用pip install pymysql命令。
ubuntu python3.5只支持安装pymysql

# git clone https://github.com/PyMySQL/PyMySQL
# cd PyMySQL/
# python3 setup.py install
# 需要安装 sudo apt-get install python3-setuptools

7.PyCharm导入模块使用技巧
比如导入bs4模块,
直接输入import bs4,然后会报错,提示模块不存在
按 alt+回车 出现错误修正提示
选择安装模块即可自动安装

8.python切片
shoplist[:-1]会返回除了最后一个项目外包含所有项目的序列切片,shoplist[::-1]会返回倒序序列切片。
'xieyang'
正序是:0 1 2 3 4 5 6
倒序是:-7 -6 -5 -4 -3 -2 -1

9.编码问题
os.listdir(path)对于含有汉字的话,打印出来的是ASCII码。
‘\xbe\xea\xb6\xf9\xa3\xac\xce\xd2\xb0\xae\xc4\xe3\xa3\xa1’是ascii码

10.python安装时候python路径选择第一个,这样就会自动安装到系统环境变量中了。

11.关于windows下同时安装py2和py3,还有pip2和pip3的问题:
http://blog.csdn.net/qiang12qiang12/article/details/53239866
https://www.zhihu.com/question/21653286

python虚拟环境virtualenv安装和配置:
http://blog.csdn.net/pipisorry/article/details/39998317
http://blog.csdn.net/wukong616/article/details/48025147

关于source bin/activate这部执行出错:
http://www.th7.cn/Program/Python/201606/872439.shtml
关键步骤是:切换到Scripts目录下,运行activate.bat命令

12.urllib 和urllib2之间的区别
在python中,urllib和urllib2不可相互替代的。
整体来说,urllib2是urllib的增强,但是urllib中有urllib2中所没有的函数。
urllib2可以用urllib2.openurl中设置Request参数,来修改Header头。如果你访问一个网站,想更改User Agent(可以伪装你的浏览器),你就要用urllib2.
urllib支持设置编码的函数,urllib.urlencode,在模拟登陆的时候,经常要post编码之后的参数,所以要想不使用第三方库完成模拟登录,你就需要使用urllib。
urllib一般和urllib2一起搭配使用。

13.python random.seed
andom.seed方法的作用是给随机数对象一个种子值,用于产生随机序列。
对于同一个种子值的输入,之后产生的随机数序列也一样。
通常是把时间秒数等变化值作为种子值,达到每次运行产生的随机系列都不一样。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 可以看我的博客 lmwen.top 或者订阅我的公众号 简介有稍微接触python的人就会知道,python中...
    ayuLiao阅读 3,223评论 1 5
  • 周一早上 前百度 的leader 问我 周日发在群里的 说什么在测试机安装好了 paddle 是什么,我说就是...
    Helen_Cat阅读 1,235评论 0 1
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,964评论 25 709
  • 谁都明白,这一切都不会重来,可还是希望有朝一日,能够重逢,纵然青春不再,纵然时光流逝,可心底的一团火从未熄灭,
    海盗人生阅读 108评论 1 1
  • 1.怎么你年纪轻轻就近视了? 哦不,这与年龄无关,是为了看淡这世间事,所以模糊了双眼 2何以解忧? 唯有暴富 3为...
    北方有佳人836400阅读 724评论 5 5