http://blog.csdn.net/mottolinux/article/details/525600621 关于Python编码的基本常识 在python里面 “明文”是unicode类型和str , “密文”是其他的编码格式 如gbk utf- latin-1等等 编码: “明文”->”密文” .encode([目标编码格式]) 对象必须为unicode类型 解码: “密文”->”明文” .decode([源编码格式]) 对象为str类型 对于汉字 一共有三大类编码方式 以中文汉字”…
python 代码文件的编码.py文件默认是ASCII编码,中文在显示时会做一个ASCII到系统默认编码的转换,这时就会出错:SyntaxError: Non-ASCII character.需要在代码文件的第一行或第二行添加编码指示: # coding=utf- ##以utf-8编码储存中文字符 print '中文' 像上面那样直接输入的字符串是按照代码文件的编码来处理的,如果 用unicode编码,有以下三种方式: s1 = u'中文' #u表示用unicode编码方式储存信息 s2 = u…
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001386820066616a77f826d876b46b9ac34cb5f34374f7a000…
https://my.oschina.net/mcyang000/blog/289460   打开路径含有中文的文件时,要注意: 1 在windows对文件名编码是采用gbk等进行编码保存,所以要将文件路径先解码,在按gbk编码:  字符串--解码成unicode--编码(注意str和unicode的转换) with open(r"D:\我的文档\桌面\python\config.ini".decode('utf8').encode('gbk'),'rb') as f: print f…
目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Selector Java NIO 学习笔记(四)----文件通道和网络通道 Java NIO 学习笔记(五)----路径.文件和管道 Path/Files/Pipe Java NIO 学习笔记(六)----异步文件通道 AsynchronousFileChannel Java NIO 学习笔记(七)----N…
1. 中文路径兼容python程序如果路径中包含中文字符,不加处理会有类似报错:'ascii' codec can't decode byte 0xxx in position xx:ordinal not in range(128) 解决方法: path = unicode(path,'utf-8')2. 文件是否是图像格式判断python中的标准库 imghdr 可以用来判断文件是否是图片, imghdr.what(target) 返回 target 的图片类型,如果不是图片,返回 None…
在很多时候,你会想要让你的程序与用户(可能是你自己)交互.你会从用户那里得到输入,然后打印一些结果.我们可以分别使用 raw_input 和 print 语句来完成这些功能.对于输出,你也可以使用多种多样的 str (字符串)类.例如,你能够使用 rjust 方法来得到一个按一定宽度右对齐的字符串.利用 help(str) 获得更多详情.另一个常用的输入/输出类型是处理文件.创建.读和写文件的能力是许多程序所必需的 1.使用文件 通过创建一个file类的对象打开一个文件,分别使用file类的re…
这里地址的方法也是可用的,但是net3.5不能使用 为此我选择使用win32api的方式来遍历当前桌面所有资源管理器 /// <summary> /// 不重复打开dwg路径的资源管理器 /// </summary> [CommandMethod("JJ_OpenDwgFilePath")] public static void JJ_OpenDwgFilePath() { Database db = HostApplicationServices.Workin…
在做一个Qt项目的时候,完成上传文件时,通过fopen打开文件用来读时发现fopen不能打开中文的文件名,自己在网查找一下,解决方法如下 参考:http://weidaohang.org/wangluo/h/index.PHP?q=aHR0cDovL3d3dy5qYjUxLm5ldC9hcnRpY2xlLzUxOTY2Lmh0bQ%3D%3D 代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 boolUTF8ToUnicode(…
推荐学习博客:http://pythonzh.cn/post/8/ 博客或者web界面向用户展示内容,它需要从某个地方获取博客内容或者web界面内容,才能够展示出来.通常来说:某个地方指的就是数据库 数据库的组织是根据我们的博客需求来设计的, 博客需求:博客初级版本主要包含博客文章,文章会有分类以及标签.一篇文章只能有一个分类,但可以打上很多标签因此,可以设计数据库的形式() 设计数据库组织一张表table 增加另外一个表, 这 3 篇文章的分类和标签都是相同的,这会产生很多重复数据,当数据量很…
1.认识WebView 实例说明: 当你打开百度阅读APP→VIP全站去广告→用自带的 UI Automator去定位里面的元素,如图: 不管你去定位  '规则详情'  '开通'等等,都会定位不到,只能显示一个整体页面,这个就是WebView Note: ① 可以理解与selenium里的iframe类似 ②在右边定位里有明确的表示是 WebView ③点击一个链接后,有进度条加载后页面一般都是Webview.  也就是说,是一个H5页面了 ④UI Automator 不能定位到里面的元素 处理…
注:技术尚浅,时间匆忙,如有错误或者不当之处值得商榷的,请留言,吾必思而改之. 第一篇 :Python基础- 安装/变量/输入/及循环语句使用 第二篇:  Python基础- 常用数据类型 第三篇: Python基础- 集合,文件操作 和 函数详解 第四篇: Python基础- 装饰器-迭代器-生成器-内置函数-json/pickle 第五篇: Python基础- 常用模块的使用 第六篇: Python基础- 面向对象编程基础 第七篇: Python基础- 面向对象编程进阶 第八篇: Pytho…
1 进入虚拟环境,安装markdwon  python install markdown 2 修改视图函数detail def detail(request, pk): # get_object_or_404当传入的pk对应的post数据存在时,就会返回post数据否则返回404 # 需要导入 import markdwon post = get_object_or_404(Post, pk=pk) post.body = markdown.markdown(post.body, extensi…
需求: 真正的首页视图函数,当用户访问我们的博客首页时,他将看到我们发表的博客文章列表,就像 演示项目 里展示的这样.t https://docs.djangoproject.com/en/1.10/howto/static-files/ 编写博客视图函数 从数据库获取文章的标题,将其作为模板变量传递到模板,所以视图函数 # coding=utf8 from django.shortcuts import render from django.http import HttpResponse f…
1上网的流程: 打开浏览器,输入网址(http://zmrenwu.com/) 浏览器根据输入网址,完成以下几件事:1识别服务器地址,2将用户的浏览意图打包成一个http请求,发送给服务器,等待服务器响应请求 服务器接收到请求后,根据请求从数据库查询,取出数据,并将这些数据嵌入到html中,打包成http响应,返回给浏览器 浏览器接收到响应,解读响应,把html文档解析并显示给用户 从上面的流程来看,django就是一个服务器,其主要解决问题:接收浏览器发送的请求,返回响应给浏览器 从而,会产生…
推荐学习博客:http://zmrenwu.com/post/6/ 选择数据库版本(SQLite3) 如果想选择MySQL等版本数据库,请先安装MySQL并且安装python mysql驱动,这里不做描述.可以查看虫师web接口开发与自动化测试page65 选择Python 内置数据库SQLite3 SQLite3 是一个十分轻巧的数据库,它仅有一个文件.你可以看一到项目根目录下多出了一个 db.sqlite3 的文件,这就是 SQLite3 数据库文件,Django 博客的数据都会保存在这个数…
上一篇我们已经完成数据库的设计,但是仅仅是python语言,并没有真正创建了数据库表.翻译成数据库语言,真正创建数据库表由django manage.py来实现,这一过程专业术语:迁移数据库 切换到manage.py所在目录,分别执行命令:python manage.py makemigrations , python manage.py migrate 执行python manage.py makemigrations结果 F:\pythoncode\django\workspace\blog…
python函数: 默认参数: retries= 这种形式 def ask_ok(prompt, retries=, complaint='Yes or no, please!'): while True: ok = raw_input(prompt) if ok in ('y', 'ye', 'yes'): return True if ok in ('n', 'no', 'nop', 'nope'): return False retries = retries - : raise IOEr…
tree = ET.parse("Result.xml")root = tree.getroot()print type(root)print root.tag # 得到root 标签print root.text #得到标签的值print root.attrib def parserResultXml(xmlfile): tree = ET.parse(xmlfile) result = tree.getroot()[0][1] for child in result: if chi…
回顾一下开发流程:配置url, 编写视图函数,编写对应模板 配置URL 首页视图匹配的 URL 去掉域名后,是一个空的字符串.每篇文章的详情有着不同的 URL,因此可以设计文章详情页面URl:<网站域名>/post/文章ID/ 时.下面依照这个规则来绑定 URL 和视图: # coding=utf8 from django.conf.urls import url from .import views app_name = 'blog' urlpatterns = [ url(r"^…
1 如果没有创建超级管理员账号,先要创建python manage.py createsuperuser 2 在admin后台注册模型(如果没有这一步,登录http://127.0.0.1:8000/admin,看到admin用户只能添加用户,没有发表文章的一些功能) blog/admin.py from django.contrib import admin from .models import Post, Category, Tag admin.site.register(Post) ad…
查询(取)数据 >>> Category.objects.all() <QuerySet [<Category: Category object>]> >>> Tag.objects.all() <QuerySet [<Tag: Tag object>]> >>> Post.objects.all() <QuerySet [<Post: Post object>]> >>…
推荐学校django博客:http://pythonzh.cn/post/8/ django app 可以理解为一个文件夹: 里面包含了相关功能的代码.通过manage.py来创建 web app 激活虚拟python环境 进入manage.py所在目录,执行python manage.py startapp blog 可以看到和manage.py同级目录blog 建好文件夹,要告知django这是个应用,修改settings.py…
我们的博客侧边栏有四项内容:最新文章.归档.分类和标签云. 这些内容相对比较固定,且在各个页面都会显示,如果像文章列表或者文章详情一样,从视图函数中获取然后传递给模板,则每个页面对应的视图函数里都要写一段获取这些内容的代码,这会导致很多重复代码. 更好的解决方案:自定义一个模板标签,然后在每个页面的模板导入自定义的模板标签即可,下面整理出自定义标签的流程: 1 创建自定义模板的文件夹 在blog/…
1 修改detail视图函数,渲染文件的时候,增加codehight拓展 post.body = markdown.markdown(post.body, extensions=[ 'markdown.extensions.extra', 'markdown.extensions.codehilite', 'markdown.extensions.toc', ]) 2 安装Pygments 进入虚拟环境, pip install Pygments 3 修改base.html, 增加代码高亮的样式…
目前我们看到的只是模板中预先填充的一些数据,我们得让它显示从数据库中获取的文章数据.下面来稍微改造一下模板: 删除所有article标签,然后添加以下内容,将从数据库读取到的内容填充到模板变量{{ post_list }} {% for post in post_list %} <article class="post post-{{ post.pk }}"> <header class="entry-header"> <h1 clas…
在视图函数里返回的是一个 HttpResponse 类的实例,我们给它传入了一个希望显示在用户浏览器上的字符串.但是我们的博客不可能只显示这么一句话,它有可能会显示很长很长的内容.比如我们发布的博客文章列表,或者一大段的博客文章.我们不能每次都把这些大段大段的内容传给HttpResponse. Django 对这个问题给我们提供了一个很好的解决方案,叫做模板系统.Django 要我们把大段的文本写到一个文件里,然后 Django 自己会去读取这个文件,再把读取到的内容传给 HttpRespons…
http://www.jb51.net/article/57208.htm 3).Popen.communicate(input=None):与子进程进行交互.向stdin发送数据,或从stdout和stderr中读取数据.可选参数input指定发送到子进程的参数. Communicate()返回一个元组:(stdoutdata, stderrdata).注意:如果希望通过进程的stdin向其发送数据,在创建Popen对象的时候,参数stdin必须被设置为PIPE.同样,如果希望从stdout和…
函数可以通过 关键字参数 的形式来调用,形如 keyword = value .例如,以下的函数: def parrot(voltage, state='a stiff', action='voom', type='Norwegian Blue'): print "-- This parrot wouldn't", action, print "if you put", voltage, "volts through it." print &qu…
根据自己对dsoframer控件的学习,想把dsoframer控件进行简单的包装为C#的usercontrol,大体需要作如下:(创建windows的usercontrol的步骤就不再说了...)我们暂时不对dso打开网络文件的功能和上传文件功能作过多研究,一来由于我自己不用它提供的这个功能,二来确实觉得它的这方面功能不是很强大而且使用起来比较麻烦,呵呵,请见谅!1.使用前注册该dsoframer控件,我把该dso控件当作嵌入资源,用学习笔记1中的方法注册即可 /// <summary> //…