[Python]同是新手的我,分享一些经验
本来想分享一些知识,但是发现,写着写着,感觉分享一些经验,或许会少让大家走一些弯路,索性就把标题一改。
我不是教给大家些什么,我没有资格,我也是摸着石头过河,我只是本着分享的精神,在这里分享自己的东西。
我是python新手,前段时间刚看完基本语法,跑去看flask官方文档。发现还是有些地方不明白。不知道g 这个东西原理是什么,往里面怎么放东西之类的,不是很清楚。
对于官方文档里面将的本地环境也不理解。但是也是有些收获,不能说完全掌握,但是写个简单的跳转页面,交互的页面也能完成。这里说的东西多了,其实我就是想说:
我走在学习python的道路上,我不是怕难的知识,我是怕没有方向。总而言之一句话,学就是进步,学的多了,也就有方向了。
遇到问题的时候,我就对自己说:你看不懂的地方,那是因为,你之前有的地方没有看懂。那就去查,去学。想学高级武功成为高手,没有之前的积累,就能随随便便的学成,那高手也就不值钱了。
我东学学,西学学发现。发现了一本适合我们刚入门的新手学习的书:
《编写高质量代码——改善python程序的91个建议》
举个类子来说,你学会了出拳,学会了踢腿,但什么时候用那个?没有前辈的指导,亲身的体验,你是不会完全掌握的。而这本书,罗列出来的91个建议,就是前辈的经验之谈。换个说法,这个是攻略。看过《代码大全》的人大概也明白我的意思了。
推荐阅读的顺序(悄悄的告诉你们我才看了三分之一......)
第一章不要先看,因为这是总纲领,靠生记,记不住的,读过有印象即可
第二章,第三章,一个字一个字的读,例子运行一边,每天不要读的太多。多多回味!
我的方法是,把每一建议都写一些笔记,这本书真的是太好了,我总结的都没有书上的好,就算抄我也一个字一个字打出来,我的笔记都放在github上了,下面有地址。
这里我要声明,我几乎没有自己写过什么东西,写的都是一些例子,没有什么自己的东西。
去我的github上看看就知道了。。。https://github.com/521xueweihan/
我的思路是这样的:我做了十几年的学生,如果说擅长什么就是读书,一般套路就是先掌握理论知识再真刀实枪的干,这样不会被虐的太惨。
这只是我的个人之言,仅供参考!!!仅供参考。
本来我的这篇文章打算就贴出来下面这些内容,结果好几天没写文章,憋的话太多,就写的跑偏了。
下面就是我读《编写高质量代码——改善python程序的91个建议》的一篇笔记
(我一般是先看,之后在写笔记,我看到第三章,笔记记到第二章,这么相当与读两边书。)
#coding:utf-8
################
# 17.考虑兼容性,尽可能使用Unicode
###############
"""
前言:Python内建的字符串有两种类型:str和Unicode,因为最早的ASCII编码使用一个字节
只能表示128个字符,但是对于很多语言128个字符数远远不够,这个时候出现了多种编码格式
从而导致不同平台,不同语言之间的文本无法进行很好地转换。
要解决这个问题,必须为不同的文字分配统一的编码,Unicode,也被称为‘万国码’。
"""
#####
# 场景1:读取文件显示乱码 filehandle = open("test.txt", 'r') # 读取测试中文文件‘test.txt’
print filehandle.read()
filehandle.close() #关闭资源 # 因为:文本的编码为UTF-8,但是windows系统中他被映射为GBK编码,所以在运行之后,
# 两种编码并不兼容。
# Unicode 为不同语言设置了唯一的二进制表表示形式(方便于相互转化)
##### # 解决办法:使用decode()和encode()方法,分别是解码和编码 filehandle = open("test.txt", 'r') # 读取测试中文文件‘test.txt’
# 这里decode()方法将其他编码对应的字符串解码成Unicode,
# encode()方法将Unicode编码转换为另一种编码,Unicode作为中间编码
print (filehandle.read().decode("UTF-8")).encode("gbk")
filehandle.close() #关闭资源 #####
# 场景2:输出中文字符,抛出异常SyntaxError print '中文测试' # 因为:Python中默认的编码是ASCII编码,包含中文的字符串。当调用print输出时
# 采用隐式地进行从ASCII到系统默认编码的转换,中文字符并不是ASCII字符,此时
# 源文件又未指定其他编码方式,这时便会抛出SyntaxError异常
#####
# 解决办法:在源文件中进行编码声明,
# 如:#coding=utf-8 print '中文测试' #####
# 场景3:普通字符串和Unicode进行字符串连接时抛出UnicodeDecodeError异常 print '中文测试' + u'Chinese Test' #抛出异常 # 因为:当两种类型的字符串连接的时候,Python将左边的中文字符串转换为
# Unicode再与右边的Unicode字符串连接,这时将‘中文测试’字符串转换为Unicode
# 使用系统默认的ASCII编码对字符串进行解码,但是其中‘中’字对应的值为214,
# 当编码值在0~127的时候Unicode和ASCII是兼容的,但是大于128的时候,ASCII编码
# 不能正确处理这种情况,则抛出异常
#####
# 解决办法:把中文字符解码成gbk编码
print '中文测试'.decode('gbk') + u'Chinese Test' # 笔记
# 对于中文字符,为了做到不同系统之间的兼容,建议使用Unicode方式表示。
# Python2.6之后可以通过import unicode_literals自动将定义的普通字符
# 识别为Unicode字符串,这样字符串的行为将和Python3中保持一致。 # 形式如下: #from __future__ import unicode_literals
s = '中文测试'
print s
不论学的什么,只要坚持每天都学,肯定会学成。不论写多少行代码,每天都写,肯定会有长进。(像我每天只写例子,我还是坚持写)
[Python]同是新手的我,分享一些经验的更多相关文章
- Python+selenium+unittest+HTMLTestReportCN单元测试框架分享
分享一个比较基础的,系统性的知识点.Python+selenium+unittest+HTMLTestReportCN单元测试框架分享 Unittest简介 unittest是Python语言的单元测 ...
- 想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ #精选JAVASCRIPT前端开发
想成为一个高效的Web开发者吗?来看看大牛分享的经验吧~ 作为一个软(ku)件(bi)工(de)程(ma)师(nong),你有没有觉得做什么事都没时间?没时间学习新东西,没时间去回顾.整理原来写的烂代 ...
- 关于python测试webservice接口的视频分享
现在大公司非常流行用python做产品的测试框架,还有对于一些快速原型产品的开发也好,很好地支持OO编程,代码易读.Python的更新挺快的,尤其是第三方库. 对于测试人员,代码基础薄弱,用pytho ...
- Python入门基础教程(儿童版) [分享一本入门级教程]
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1. 推荐书名 No Starch--Python for ...
- python接口测试之新手篇
嗨,大家好,我是小白,好久没写博客了,最近公司搞什么python的接口测试,心里一阵狂喜,在公司上百个接口里拿出一个主要接口一顿乱搞,好在搞通了 但是在这过程中也碰到了好多的问题,决定将问题分享出来能 ...
- Python爬虫教程-新浪微博分布式爬虫分享
爬虫功能: 此项目实现将单机的新浪微博爬虫重构成分布式爬虫. Master机只管任务调度,不管爬数据:Slaver机只管将Request抛给Master机,需要Request的时候再从Master机拿 ...
- 3个月零基础入门Python+数据分析,详细时间表+计划表分享
大家好,我是白云. 今天想给大家分享的是三个月零基础入门数据分析学习计划.有小伙伴可能会说,英语好像有点不太好,要怎么办?所以今天我给大家分享的资源呢就是对国内的小伙伴很友好,还附赠大家一份三个月学 ...
- Python 小白的新手教程(一)
本文是 python 入门级别的基础知识,包括数据类型和变量.输入输出.字符串和编码.list tuple dict set .条件判断.循环.函数.切片 迭代 列表生成器 生成器 迭代器等. 参考课 ...
- Python从零开始(1)新手常问
如何清除屏幕 如果是在Windows命令行中,输入 import os os.system('cls') 在IDEL中没有找到完美的清除屏幕的方法 网上提到用新建窗口的方法 如何退出Python提示符 ...
随机推荐
- 解决真机调试时Eclipse DDMS上打不开/data目录的问题
一般真机调试时DDMS里面的File Explorer是不能打开/data 目录的,不过也很容易解决. 1.首先手机要root.这个很简单,网上一大堆资料和软件. 2.仅仅root之后还不行,下载一个 ...
- HTTP基本认证(Basic Authentication)的JAVA示例
大家在登录网站的时候,大部分时候是通过一个表单提交登录信息.但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证.下面来看看一看这个认证的工作过程:第一步: 客户端发送ht ...
- WHY数学图形可视化工具(开源)
WHY数学图形可视化工具 软件下载地址:http://files.cnblogs.com/WhyEngine/WhyMathGraph.zip 源码下载地址: http://pan.baidu.com ...
- java动态代理汇总
逛知乎,有篇关于fastjson如此快为什么国外还是喜欢用Jackson的问题,高票答案中有一点提到了fastjson有很多写死的地方,也不太适合像spring这种依赖AOP的框架使用,顺便提到了AS ...
- mybatis热加载的实现
最近在使用mybatis,由于是刚刚开始用,用的并不顺手,目前是感觉有2个地方非常的不好用: 1.mybatis调试不方便 由于dao层只有接口,实现只是一个map的xml文件,想加断点都没有地方加, ...
- ABAP程序中关于长文本的处理方法
现象描述 长文本在SAP的运用主要体现在一些notes的记录,或者一些比较长的文本的存取,比如工作流的审批意见,采购申请和采购订单的附加说明等等.如下图: 处理过程 1:SAP中所有的长文本都存在两张 ...
- Windows下干活儿辅助软件
桌面下高速文件搜索软件:Listary Pro(收费)和Everything(开源免费),Everything推荐Beta版,明显比老旧的稳定版好用. 桌面太乱,可以试试Fences(收费). 需要文 ...
- magic_quotes_gpc 、 magic_quotes_runtime 、 magic_quotes_sybase 介绍
一.三个配置项的作用与区别 magic_quotes_gpc 作用:对php服务器端接收的 GET POST COOKIE 的值执行 addslashes() 操作.作用范围是:WEB客户服务端.作用 ...
- Oracle存储过程,以逗号分隔字符串传参的处理
Oracle存储过程,经常会遇见传入的参数是逗号分隔. 处理需要3步: 第一步,创建Type类型 第二部,创建函数 第三部,创建存储过程 代码如下: 第一步: create or replace ty ...
- window_x64微信小程序环境搭建
所需文件地址如下: http://pan.baidu.com/s/1nv0IHhn(ylk7) 1.下载微信开发工具0.7.0_x64 安装完成后,打开程序,进行微信扫码登录 2.下载微信开发工具 ...