字符

Python学习笔记:字符编码原理和操作详解

徘徊边缘 提交于 2020-04-06 12:16:37
一、电脑字符集的历史   1、电脑是如何将二进制与字符对应起来的?     我们知道,电脑底层只认识0和1的二进制数据,为了让电脑可以跟人类互动, 我们使用8个二进制位(即1个字节)来对应一个更复杂的数字,     比如:使用二进制“01000001”来指代十进制“65”,也就是大写字母A     实际使用场景中,人类利用键盘打字符“A”时,实际上是打65这个数字,电脑再到表中寻找65所代表的二进制数据“01000001”,实际处理的是这个二进制数据,这样就对应起来了,     这种对应关系表就是最早的字符编码集ASCII码表,如下图:        2、字符集是如何发展成一个庞大家族的?     电脑最初是西方人发明的,欧美国家的字符比较少,他们仅占用了前面127个位置就已经够用了,而8位的二进制数据最多可以表示255个不同的字符,剩下的128个字符就留给了别的国家,那么别国肯定是不够用的,怎么办?     于是聪明的中国人在ASCII码中规定几个位置,默认当电脑要寻找这几个位置的字符时就映射到另外一张表格中,而这张表格中存储了完整的中文字符,中文字符的发展历史如下:     a、GB2312:支持7000个汉字     b、GBK1.0:支持20000+个中文字符     c、GB18030:支持27000+个中文字符     d、Unicode

C#常量知识整理

别来无恙 提交于 2020-04-06 11:55:09
整数常量 整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。 整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。 浮点常量 一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。您可以使用小数形式或者指数形式来表示浮点常量。 使用小数形式表示时,必须包含小数点、指数或同时包含两者。使用指数形式表示时,必须包含整数部分、小数部分或同时包含两者。有符号的指数是用 e 或 E 表示的。 字符常量 转义序列 含义 \\ \ 字符 \' ' 字符 \" " 字符 \? ? 字符 \a Alert 或 bell \b 退格键(Backspace) \f 换页符(Form feed) \n 换行符(Newline) \r 回车 \t 水平制表符 tab \v 垂直制表符 tab \ooo 一到三位的八进制数 \xhh . . . 一个或多个数字的十六进制数 字符串常量 字符常量是括在双引号 "" 里,或者是括在 @"" 里。字符串常量包含的字符与字符常量相似,可以是:普通字符、转义序列和通用字符 使用字符串常量时,可以把一个很长的行拆成多个行,可以使用空格分隔各个部分。 使用字符串常量时

vim命令使用总结

让人想犯罪 __ 提交于 2020-04-06 11:07:35
一. vim简介 vim 是linux系统自带的文本编辑器。 vim 共有三种模式: 命令模式:用vim打开文件就进入了命令模式;输入模式:在命令模式输入i/I/a/A/o/O就进入输入模式; 在输入模式下按键esc,则退出输入模式进入命令模式底线模式:在命令模式按下英文冒号:就进入了底线模式; 二. vim命令使用总结 2.1 光标移动 (1)光标上下左右移动(键盘的上下左右四个键): 向上、向下同理。 (2)行首、行尾: (3)移动到具体的某一行 (4)移动到单词 2.2 查找 在命令模式下输入以下命令进行查找,光标会跳转到第一个匹配的字符,此时按下n 代表重复前一个搜索动作;按下N代表反向重复前一个搜索动作 。 2.2.1 Vim查找支持正则表达式 例如/vim$匹配行尾的"vim"。需要查找特殊字符需要转义,例如/vim$匹配"vim$"。 注意:查找回车应当用\n,而替换为回车应当用\r(相当于<CR>)。 2.2.2 vim查找默认是大小写敏感查找 在查找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找 例如:/foo\c 会查找所有foo、FOO、fOOD等 2.2.3 查找光标所在单词 在命令模式下按下: *:匹配当前光标所在的单词(这里的单词是指前后为空白字符或者点号,例如当前为foo, 可以匹配foo bar中的foo,但不可匹配foobar中的foo

Linux常用命令13

自闭症网瘾萝莉.ら 提交于 2020-04-06 10:54:36
echo 命令是 Linux 中 最基本和最常用 的命令之一。 传递给 echo 的参数被打印到标准输出中。 echo 通常用于 shell 脚本中,用于显示消息或输出其他命令的结果。 echo 命令 echo 是 Bash 和其他大多数流行的 shell,如 Zsh 和 Ksh 中的一个 shell 内置程序。 它的行为在不同的 shell 中略有不同。 还有一个独立的/usr/bin/echo 实用程序,但通常会优先使用 shell 内置版本。 我们将介绍 Bash 内置版本的 echo。 echo 命令的语法如下: echo [-neE] [ARGUMENTS] 当-n 选项,则取消尾随换行符 如果-e 选项,则将解释以下反斜杠转义字符: \ 显示反斜杠字符 \a 警报(BEL) \b 显示退格字符 \c 禁止任何进一步的输出 \e 显示转义字符 \f 显示窗体提要字符 \n 显示新行 \r 显示回车 \t 显示水平标签 \v 显示垂直标签 这个-E 项禁用转义字符的解释。这是默认值 在使用 echo 命令时 ,不过有几点需要考虑 。 方法传递参数之前,shell 将替换所有变量、通配符匹配和特殊字符echo. 命令 虽然没有必要,但是将传递给的参数包含起来是一个很好的编程实践双引号或单引号 当使用单引号时 '' 将保留引号内每个字符的字面值。不展开变量和命令 举个栗子

C#常量知识整理

别来无恙 提交于 2020-04-06 10:44:13
整数常量 整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。 整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。 浮点常量 一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。您可以使用小数形式或者指数形式来表示浮点常量。 使用小数形式表示时,必须包含小数点、指数或同时包含两者。使用指数形式表示时,必须包含整数部分、小数部分或同时包含两者。有符号的指数是用 e 或 E 表示的。 字符常量 转义序列 含义 \\ \ 字符 \' ' 字符 \" " 字符 \? ? 字符 \a Alert 或 bell \b 退格键(Backspace) \f 换页符(Form feed) \n 换行符(Newline) \r 回车 \t 水平制表符 tab \v 垂直制表符 tab \ooo 一到三位的八进制数 \xhh . . . 一个或多个数字的十六进制数 字符串常量 字符常量是括在双引号 "" 里,或者是括在 @"" 里。字符串常量包含的字符与字符常量相似,可以是:普通字符、转义序列和通用字符 使用字符串常量时,可以把一个很长的行拆成多个行,可以使用空格分隔各个部分。 使用字符串常量时

C# 常量

南笙酒味 提交于 2020-04-06 10:18:14
<!--注释:博友看过此文章后可以将自己的练习笔记写在下面评论区或私信发给我,我看到会将其添加到文章笔记栏里面并备注上博友的名字/昵称!这样可以让更多的博友看到更好的学习当然自己也可以在这里再次回顾并与其他博友交流。--!> 今天我们来讲一下c#常量:C#的常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。常量可以被当作常规的变量,只是它们的值在定义后不能被修改。 C#常量有以下五种:整数常量、浮点常量、字符常量、字符串常量、定义常量五类。 1.整数常量 整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。这里有一些整数常量的实例: 212 /* 合法 */ 215u /* 合法 */ 0xFeeL /* 合法 */ 078 /* 非法:8 不是一个八进制数字 */ 032UU /* 非法:不能重复后缀 */   以下是各种类型的整数常量的实例: 85 /* 十进制 */ 0213 /* 八进制 */ 0x4b /* 十六进制 */ 30 /* int */ 30u /*

文本处理工具和正则表达式

三世轮回 提交于 2020-04-06 09:46:03
1 文本编辑工具之神VIM 1.1 vi和vim简介 在Linux中我们经常编辑修改文本文件,即由ASCII,Unicode或其他编码的纯文字的文件。 文本编辑种类: 全屏编辑器:nano(字符工具),gedit(图形化工具),vi,vim 行编辑器:sed vi Visual editor,文本编辑器,是Linux必备工具之一,功能强大,学习曲线较陡峭,学习难度大 vim VIsual editor iMproved,和vi使用方法一致,但功能更为强大。 1.2 使用vim初步 1.2.1 vim命令格式 vim [OPTION]... FILE... 常用选项 +# 打开文件后,让光标处于第#行的行首,+默认行尾 +/PATTERN 让光标处于第一个被PATTERN匹配到的行行首 -b file 二进制方式打开文件 -d file1 file2... 比较多个文件,相当于vimdiff -m file 只读打开文件 -e file 直接进入ex模式,相当于执行ex file 说明: 如果该文件存在,文件被打开并显示内容 如果该文件不存在,当编辑后第一次存盘时创建它 1.2.2 三种主要模式和转换 vim是一个模式编辑器,击键行为是依赖于vim的“模式” 三种常见模式: 命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴文本 插入(Insert)或编辑模式

马哥博客作业第三周

戏子无情 提交于 2020-04-06 02:09:08
正则表达式 一.文本编辑工具 1.文本编辑之神vim 1.1 vim的三种模式: 命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴文本 插入(Insert)或编辑模式:用于修改文本 扩展命令(extended command )或命令(末)行模式:保存,退出等 1.2 模式切换: 插入模式 --- ESC-----> 命令模式 命令模式 ---- : ----> 扩展命令模式 扩展命令模式 ----ESC,enter----> 命令模式 1.3 扩展模式的基本命令 w 写(存)磁盘文件 wq 写入并退出 x 写入并退出 X 加密 q 退出 q! 不存盘退出,即使更改都将丢失 r filename 读文件内容到当前文件中 w filename 将当前文件内容写入另一个文件 !command 执行命令 r!command 读入命令的输出 1.4 命令模式的基本命令 ZZ 保存退出 ZQ 不保存退出 1.4.2 光标跳转 字符间跳转: h: 左 L: 右 j: 下 k: 上 单词间跳转: w:下一个单词的词首 e:当前或下一单词的词尾 b:当前或前一个单词的词首 当前页跳转: H:页首 M:页中间行 L:页底 zt:将光标所在当前行移到屏幕顶端 zz:将光标所在当前行移到屏幕中间 zb:将光标所在当前行移到屏幕底端 行首行尾跳转: ^ 跳转至行首的第一个非空白字符

单个字符的匹配规则(正则表达式和re模块)

你离开我真会死。 提交于 2020-04-05 23:44:24
什么是正则表达式: 个人对其的理解:按照一定规则,从某个字符串中匹配出想要的数据。 标准的解释:正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。 -------百度百科 正则表达式常用的匹配规则: 匹配某个字符串: text = "hello" retext = re.match("he",text) print(retext.group()) 可以在 text 匹配出 he。 1.只可以顺着匹配,即若开头不是 he,会报错。 2. .group()将匹配到的类型转换成可以读文本。 点(.)匹配任意的字符: text = "+hello" ret = re.match(".",text) print(ret.group()) 匹配出 + 。 \d:匹配任意的数字字符(0-9) text = "0+35" ret = re.match('\d',text) print(ret.group()) \D:匹配任意的非数字字符 text = "+" ret = re.match('\D',text) print(ret.group()) \s:匹配空白字符(\t,\r,\n) text = " \nab " ret = re

linux unzip .zip file

半世苍凉 提交于 2020-04-05 19:42:56
1.功能作用:解压缩zip文件 2.位置:/usr/bin/unzip 3.格式用法:unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir] 4.主要参数 -c 将解压缩的结果显示到屏幕上,并对字符做适当的转换 -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。 -l 显示压缩文件内所包含的文件 -f 更新现有的文件 -t 检查压缩文件是否正确,但不解压 -u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中 -z 仅显示压缩文件的备注文字 -v 执行是时显示详细的信息。或查看压缩文件目录,但不解压 -T 将压缩文件内的所有文件的最新变动时间设为解压缩时候的时间 -x 指定不要处理.zip压缩文件中的哪些文件 -d 指定文件解压缩后所要存储的目录 -n 解压缩时不要覆盖原有的文件 -q 安静模式,执行时不显示任何信息 -o 不必先询问用户,unzip执行后覆盖原有文件 -a 对文本文件进行必要的字符转换 -j 不处理压缩文件中原有的目录路径 -aa 把所有的文件目录当作文本处理 -U use escapes for all non-ASCII Unicode -UU 忽略Unicode编码字符 -C 压缩文件中的文件名称区分大小写 -L