厦门建设网站建站做网站费用怎么记分录

web/2025/10/3 3:45:31/文章来源:
厦门建设网站建站,做网站费用怎么记分录,软件定制开发是什么意思,电脑上制作网页的软件一、使用中文字符 在python源码中如果使用了中文字符#xff0c;运行时会有错误#xff0c;解决的办法是在源码的开头部分加入字符编码的声明#xff0c;下面是一个例子#xff1a;#!/usr/bin/env python# -*- coding: cp936 -*-Python Tutorial中指出#xff0c;python的… 一、使用中文字符 在python源码中如果使用了中文字符运行时会有错误解决的办法是在源码的开头部分加入字符编码的声明下面是一个例子#!/usr/bin/env python# -*- coding: cp936 -*-Python Tutorial中指出python的源文件可以编码ASCII以外的字符集最好的做法是在#!行后面用一个特殊的注释行来定义字符集# -*- coding: encoding -*-根据这个声明Python会尝试将文件中的字符编码转为encoding编码并且它尽可能的将指定地编码直接写成Unicode文本。注意coding:encoding只是告诉Python文件使用了encoding格式的编码但是编辑器可能会以自己的方式存储.py文件因此最后文件保存的时候还需要编码中选指定的ecoding才行。二、中文字符的存储 str u中文stru\xd6\xd0\xce\xc4str 中文str\xd6\xd0\xce\xc4u中文只是声明unicode实际的编码并没有变。这样子就发生变化了str 中文str\xd6\xd0\xce\xc4str str.decode(gb2312)stru\u4e2d\u6587更进一步s 中文s.decode(gb2312)u\u4e2d\u6587len(s)4len(s.decode(gb2312))2s u中文len(s)4s 中文testlen(s)8len(s.decode(gb2312))6s 中文testlen(s)10len(s.decode(gb2312))7可以看出对于实际Non-ASCII编码存储的字符串python可以正确的识别出其中的中文字符以及中文上下文中的标点符号。前缀“u”表示“后面这个字符串“是一个Unicode字符串”这仅仅是一个声明并不表示这个字符串就真的是Unicode了就好比某正太声称自己已满18岁但实际上他的真实年龄并不确定现在体育界年龄造假可不稀罕幺!那么声明成u有什么作用呢对于Python来说只要你声明某字符串是Unicode它就会用Unicode的一套机制对它进行处理。比方说做字符串操作的时候会动用到内部的Unicode处理函数保存的时候以Unicode字符双字节进行保存。等等。显而易见对于一个实际上并不是Unicode的字符串做Unicode动作的处理是有可能会出问题的。 u前缀只适用于你的字符串常量真的是Unicode的情况。三、中文字符的IO操作 用python处理字符串很容易但是在处理中文的时候需要注意一些问题。比如a 我们是python爱好者print a[0]只能输出“我”字的前半部分要想输出整个的“我”字还需要b a[0:2]print b才行很不方便并且当一段文本中同时有中英文如何处理最好的办法就是转换为unicode。像这样c unicode(a, gb2312)print c[0]这个时候c的下标对应的就是每一个字符不再是字节并且通过len(c)就可以获得字符数还可以很方便的转换为其他编码比如转换为utf-8d c.encode(utf-8)四、type ‘str’和type ‘unicode’type ‘str’将字符串看作是字节的序列而type ‘unicode’则将其看作是字符的序列单个字符可能占用多个字节字节相对于字符其在存储层次中更低一些。str转换为unicode要decode可以这样想因为要把字节序列解释成字符序列字节序列是底层的存放方式解码decode成更高层的字符以便使用同理unicode转换为str要encode就象信息编码encode后才存储一样s.decode(encoding) type str to type unicodeu.encode(encoding) type unicode to type str例如s strtype(s)type strtype(s.decode())type unicodes ustrtype(s)type unicodetype(s.encode())type str处理中文数据时最好采用如下方式1. Decode early尽早decode, 将文件中的内容转化成unicode再进行下一步处理)2. Unicode everywhere (程序内部处理都用unicode)3. Encode late (最后encode回所需的encoding, 例如把最终结果写进结果文件)下面是一个简单的演示用re库查询一个中文字符串并打印p re.compile(unicode(测试(.*), gb2312))s unicode(测试一二三, gb2312)for i in p.findall(s):print i.encode(gb2312)一二三五、跨平台处理技巧 如果一个project必须在两个平台上开发程序应该使用同样的encoding比如要求所有的文件都使用UTF-8如果实在不能统一一般是为了满足许多所谓专家学者莫名其妙的要求可以退而求其次用当前系统编码决定文件内的编码import localeimport stringimport re#根据当前系统的encoding构造需要的编码取值lang string.upper(locale.setlocale(locale.LC_ALL, ))textencoding None 3#检查编码的值是不是满足我们需要的情况if re.match(UTF-8, lang) ! None:# UTF-8编码textencoding utf-8elif re.match(rCHINESE|CP936, lang):# Windows下的GB编码textencoding gb18030elif re.match(rGB2312|GBK|GB18030, lang):# Linux下的GB编码textencoding gb18030else:# 其他情况抛个错误吧raise UnicodeErrorfd file(filename, r)fulltextlist fd.readlines()# 把每一行转换成unicodefor each in len(fulltextlist):fulltextlist[i] unicode(each, textencoding)fd.close()# 如果要打印的话可以用text.encode(encoding)来恢复成多字节编码六、异常处理 编码encoding发生在Unicode字符串转换为字节序列时而解码decoding发生在字节序列转换为Unicode字符串时encoding always takes a Unicode string and returns a bytes sequence, and decoding always takes a bytes sequence and returns a Unicode string。UnicodeDecodeErrorUnicodeDncodeError通常发生在将str字符串解码为特定Unicode字符串时。由于不同的编码只能映射部分str字符串到对应的Unicode字符所以遇到一些字符时解码会失败。UnicodeEncodeErrorUnicodeEncodeError通常发生在将Unicode字符串编码为特定字节序列时。由于不同的编码只能映射部分Unicode字符到对应的str字符串所以遇到一些字符时编码会失败。处理python编码转换时的UnicodeDecodeError异常python提供的unicode转换不像iconv或是mbstowcs之类的方便。如果转换一段unicode(1234中文,ascii) 到utf8会直接出现UnicodeDecodeError的错误。如果在你能预知字串符的编码的时候比如你用unicode(1234中文, gbk) 就不会出现错误不过很多时候会出现CJK混合的情况如果要做到将一段CJK文件转换成unicode可能就行不通了。好在python的codecs提供了register_error这个功能register_error(name, error_handler)原理很简单不过要先看unicode是如何处理异常的。unicode这个函数是将一段string按输入的编码转换成目标的编码如果出现了不与输入编码相符的会出现一个UnicodeDecodeError的异常通常有三种处理方法strict、replace、ignore默认是 strict,就是直接raise UnicodeDecodeError。通过register_error我们也可以有自己的处理方法如果遇到与输入的编码不符的时候我们就自己识别比如GBK、BIG5、JP的字符。def cjk_replace(exc):if not isinstance(exc, UnicodeDecodeError):raise TypeError(dont know how to handle %r % exc)if exc.end 1 len(exc.object):raise TypeError(unknown codec ,the object too short!)ch1 ord(exc.object[exc.start:exc.end])newpos exc.end 1ch2 ord(exc.object[exc.start 1:newpos])sk exc.object[exc.start:newpos]if 0x81ch10xFE and (0x40ch20x7E or 0x7Ech20xFE): # GBKreturn (unicode(sk,cp936), newpos)if 0x81ch10xFE and (0x40ch20x7E or 0xA1ch20xFE): # BIG5return (unicode(sk,big5), newpos)raise TypeError(unknown codec !)codecs.register_error(cjk_replace, cjk_replace)我们的cjk_replace现在只能处理GBK与BIG5的因为我对编码也不是特别了解只是大概知道GBK与BIG5的不太了解JP的。在 cjk_replace这个函数里我们对不认识的文字进行手工识别如果认识的编码就用正确的方法并返回编码后的内容与新的pos比如“1234中文”在pos为4的时候会调用我们的cjk_replace我们会返回一个从gbk转换成utf8的“中”字并返回下个正确的位置“文”的起始位置。当然了处理“文”的时候还会再调用一次。下面看看是如何使用的filedata open(test.txt,r).read() #gbk and big5 filedata unicode(filedata,ascii,cjk_replace).encode(utf8)小结一个比较一般的Python中文处理的流程* 将欲处理的字符串用unicode函数以正确的编码转换为Unicode* 在程序中统一用Unicode字符串进行操作* 输出时使用encode方法将Unicode再转换为所需的编码有几点要说明一下* 所谓“正确的”编码指得是指定编码和字符串本身的编码必须一致。这个其实并不那么容易判断一般来说我们直接输入的简体中文字符有两种可能的编码GB2312GBK、GB18030、以及UTF-8* encode成本地编码的时候必须要保证目标编码中存在欲转换字符的内码。encode这种操作一般是通过一个本地编码对应Unicode的编码转换表来进行的事实上每个本地编码只能映射到Unicode的一部分。但是映射的区域是不同的比如Big-5对应的Unicode的编码范围和 GBK对应的就不一样实际上这两个编码有部分范围是重叠的。所以Unicode的一些字符比如本身就是从GB2312转换来的那些可以映射到 GBK但未必可以映射到Big-5如果你想转换到Big-5很有可能就会出现编码找不到的异常。但UTF-8的码表范围实际上和Unicode是一样的只是编码形式不同而已所以理论上来说任何本地编码的字符都可以被转换到UTF-8* GB2312、GBK、GB18030本质上是同一种编码标准。只是在前者的基础上扩充了字符数量* UTF-8和GB编码不兼容* 出现编解码异常时可能需要自己编写编解码解析函数这需要了解一些字符编码的知识参考资料1、 http://bbs3.chinaunix.net/thread-1389703-1-2.html 2、 Python的中文处理及其它http://www.go4pro.org/?p38 3、 Python处理中文的时候的一些小技巧http://cocre.com/?p461 4、 Unicode In Python, Completely Demystified. Kumar McMillanhttp://farmdev.com/talks/unicode 5、 python中文处理好方法http://www.okpython.com/bbs/viewthread.php?tid311 6、 Python的中文处理http://hi.baidu.com/mrsz/blog/item/7812a5018c2cf2031d9583d2.html 7、 UnicodeDecodeErrorhttp://wiki.python.org/moin/UnicodeDecodeError 8、 UnicodeEncodeErrorhttp://wiki.python.org/moin/UnicodeEncodeError 9、 如何处理python编码转换时的UnicodeDecodeError异常http://blog.chinaunix.net/u/8873/showart_1009737.html 10、codecs — Codec registry and base classeshttp://docs.python.org/library/codecs.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85999.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站建设 300元网络营销常见术语

前些天发现了十分不错的人工智能学习网站,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) 微信公众号:创享日记 发送关键词:前馈…

厦门做网站找谁苏州专业高端网站建设企业

首先进入PE,在PE下找到你的系统ISO镜像,解压缩,然后将镜像里的boot文件夹、sources文件夹和bootmgr文件提取出来,然后复制到你要安装的分区(比如c盘),接下来拔下U盘,重新启动计算机&…

酒店网站建设公司排名wordpress站点链接打不开网址

在mysql中,会有相关的like关键词,并且默认的是忽略大小写的。但是在postgresql和kingbase中,只有ilike关键字,并且默认是大小写敏感的。当我们使用mybatisplus的时候,默认提供的api也只有like()。这里提供一种方式来对…

成都哪个公司做网站英文企业网站建设

推荐: NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 1. 简单的场景设置 步骤 1 打开 3ds Max。 打开 3ds Max 步骤 2 我将向您展示风铃背后的动态 通过简单的场景设置进行模拟。一旦你有了这个想法,你就可以应用这个 技术到复杂的风铃结构。 基…

网站开发常用的技术建设电商网站的总结

$dir"C:/THsoft";//这是一个目录地址 也是根目录if (is_dir($dir)){//判断$dir是否是一个目录if ($dhopendir($dir)){//dh变量用来接收opendir的返回信息 如果为真 则执行whilewhile (($filereaddir($dh))!false){ //readdir()函数会返回一个文件的名称的echo …

网站多少流量够用免费正规大数据查询平台

目录 1.网络爬虫的作用(人话): 2.使用的工具 3.不使用程序进行网页信息的获取的操作步骤 4.如何使用程序来进行上述操作 1.打开浏览器 2.输入网址 3.发送请求 4.获取响应 5.判断响应是否成功 6.获取响应里需要的内容 7.记得最后关…

长春网站推广优化传奇世界页游

strtok函数是字符串函数库中的一个函数,函数原型如下:char *strtok(char s[], const char *delim);作用:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。例如:"hello,hi:what?is!the.matter;&…

网站建设步骤邯郸网站制作个人

今年6月,文件共享工具MOVEit Transfer曾曝出SQL 注入漏洞,能让远程攻击者访问其数据库并执行任意代码。最近,MOVEit Transfer 母公司Progress Software又披露了三个新漏洞。 这三个漏洞分别是 CVE-2023-36932、CVE-2023-36933 和 CVE-2023-36…

营销型网站建设计划书软件开发过程五个步骤

原题链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-array/ 目录 1. 题目描述 2. 思路分析 3. 代码实现 1. 题目描述 2. 思路分析 用双指针算法,定义两个变量src和dst,一开始让src和dst指向num[ ]数组的第一个元素&a…

什么是营销型的网站杭州公司查询

目录 前言: 一、软件工程中的软件设计种类:根据宏观到微观分 (1)软件架构设计(层次划分、模块划分、职责分工): (2)软件高层设计、概要设计(功能模块的接…

tp5企业网站开发实例简单网页代码html作业

来源:智东西摘要:就扫地机器人、智能音箱、民用机器人和智能服务机器人的零售数据出发,盘点消费级机器人2018年的市场潜力。近两年,人工智能技术的迅猛发展。特别是视听觉语义理解、自然语言处理、神经网络、情感识别算法等的发展…

东坑东莞微信网站建设公司网站的搭建方案

目录 统计 Bigram 语言模型质量评价方法 神经网络语言模型 【系列笔记】 【Andrej Karpathy 神经网络从Zero到Hero】–1. 自动微分autograd实践要点 本文主要参考 大神Andrej Karpathy 大模型讲座 | 构建makemore 系列之一:讲解语言建模的明确入门,演示…

做外贸的网站怎样做电商

介绍: Java中的HashSet实现Set接口,即它不允许重复。 它在内部由HashMap支持,该哈希表基于哈希原理。 我们可以在HashSet中存储一个空值。 默认容量为16,负载系数为0.75,其中: Load factor Number of St…

做网站视频存储在哪里建大网站首页

题目描述: 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。 根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他&#xff…

莱芜聊城网站建设建站宝盒开通

引言 在数据驱动的时代,数据库连接组件是众多应用程序与数据存储之间的关键桥梁。Cantian-Connector-Mysql 作为一款开源项目,正逐渐受到开发者群体的关注,下面我们将从技术亮点、应用场景、部署实操以及代码示例等维度对它展开全面解读。 …

建立网站的公司杭州长沙网站关键词推广

文章目录 一. 什么是异常?二. 为什么要引入抛异常机制?方法一:直接终止程序方法二:返回错误码方法三:C 标准库中的 setjmp 和 longjmp 组合总结 C 中处理异常的方式 三. 如何进行抛异常?1. 关于抛出的异常对…

手机百度关键词排名 seo网站优化软件做网站必须花钱吗

一、批次管理 1.配置 SAP EWM 特定参数 激活仓库的批次管理 2.ERP端物料需要启用批次管理 3.EWM物料需要启用批次管理 一般是ERP启用批次管理,相关的配置也会传输到EWM系统 4.建立批次主数据 5.创建采购订单并创建内向交货单,维护批次 6.维护产品主数…

优秀网页设计网站如何做英文网站外链

目录 一.二层组网环路 1.广播风暴 2.MAC地址漂移 3.有没有三层环路 二.STP生成树 (1)工作原理 (2)STP概念 1.桥ID(BID) 2.根桥 3.COST 4.RPC 5. Rort ID ——本端 6.BPDU报文 7.PID(Port ID&…

西安高端网站开发网站自己可以做么

0 实践发现KDB不支持step调试功能 (本文针对的是arm CotexA9架构,各种架构的实现方式不一样, X86的好像已经支持,不过本人没有验证过) 1 首先看下要调试的代码段 1.1 C语言 int testPara_7(int a, int b,int c,int d, int e…

域名和网站建设网站建设软件

1导入vue 2创建一个vuex的存储对象 3注册插件 4导出 5导入vuex的存储对象 6建立一个组件