# ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。
# Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。
# 新的问题又出现了:如果统一成Unicode编码,乱码问题从此消失了。但是,如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间,在存储和传输上就十分不划算。
# 所以,本着节约的精神,又出现了把Unicode编码转化为“可变长编码”的UTF-8编码。UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。如果你要传输的文本包含大量英文字符,用UTF-8编码就能节省空间
# 所以你看到很多网页的源码上会有类似<meta charset="UTF-8" />的信息,表示该网页正是用的UTF-8编码
print(ord('A'))
#
print(ord('中'))
#
print(chr(66))
# 'B'
print(chr(25991))
# '文'
# 十六进制
print('\u4e2d\u6587')
# 中文
# Python的字符串类型是str,在内存中以Unicode表示
# 要注意区分'ABC'和b'ABC',前者是str,后者虽然内容显示得和前者一样,但bytes的每个字符都只占用一个字节。
print(len('ABC'))
#
print(len('中文'))
#
# 要计算str包含多少个字符,可以用len()函数 print(len(b'ABC'))
#
print(len(b'\xe4\xb8\xad\xe6\x96\x87'))
#
print(len('中文'.encode('utf-8')))
#
# 可见,1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。
# -----------------------------------------------------------
# 在操作字符串时,我们经常遇到str和bytes的互相转换。为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换。
# python源码文件也是一种文本文件,为了防止乱码,必须指定保存文件的编码为utf-8
# 通常在文件头写:
# !/usr/bin/env python3 #告诉Linux/OS X系统,这是一个Python可执行程序
# -*- coding: utf-8 -*- #告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
# 注意编辑器的编码也要设置为对应的编码
# 占位符
c = 'Hi, %s, you have $%d.' % ('Michael', 1000000)
print(c) # Hi, Michael, you have $1000000.
# 占位符 替换内容
# %d 整数
# %f 浮点数
# %s 字符串
# %x 十六进制整数
# format
d = 'Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125)
print(d)

python3(三)enc的更多相关文章

  1. Python3(三) 变量与运算符

    一.什么是变量 变量 = [1,2] 二.变量的命名规则 字母,数字,下划线,首字母不能是数字 系统关键字 不能用在变量名中 保留关键字 区别大小写 a=1,   a='1',   a=(1,2),  ...

  2. python2 和python3共存下问题

    一.使用python2 or python3 1. 使用python2 $ python xxx.py 2. 使用python3 $ python3 xxx.py 二.脚本调用 /usr/bin/en ...

  3. python2与python3

    一.print python2 print  "hello world !" python3 print("hello world!") 二.字符编码 pyth ...

  4. Python3安装配置【转】

    不建议卸载python2 可能会导致系统内其他软件无法使用,如果使用最新的Python3那么我们知道编译安装源码包和系统默认包之间是没有任何影响的,所以可以安装python3和python2共存 (前 ...

  5. python3笔记九:python数据类型-String字符串

    一:学习内容 字符串概念 字符串运算 字符串函数:eval().len().lower().upper().swapcase().capitalize().title().center().ljust ...

  6. CentOS7配置python3教程

    环境准备: 1.python3.7.1 下载地址:https://www.python.org/    注意:CentOS7默认就有python2的 2.虚拟机CentOS 7 64位,下载地址:ht ...

  7. CentOS 7安装Python3 笔记

    当前系统为阿里云的CentOS7.3 64位操作系统. 为了能让后续安装的软件(django,uwsgi,nginx等)尽量减少出现bug的几率,先把可能的依赖包都安装上. 一.安装依赖包 yum - ...

  8. python环境准备

    一.环境准备. 1.安装python3.5.2(勾选环境变量),python2.7.12 2.设置环境变量 (要求命令行输入python,进入python2命令行,打python3时,进入python ...

  9. python——文件操作

    open函数,该函数用于文件处理 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 1 文件句柄 = open('文件路径', '模式') 打开文件时,需要指定文件路径和以何等方式 ...

  10. Spark大数据平台安装教程

    一.Spark介绍 Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎.Spark是开源的类Hadoop MapReduce的通用并行框架,Spark拥有Hadoop MapRe ...

随机推荐

  1. asp.net里获取或设置textarea/asp:Textbox/dropdownlist/CheckBox 的值

    1.   textarea .asp:label 和 tasp:extbox 的text文本值: <textarea id="txt_remark" runat=" ...

  2. RabbitMQ消息发布和消费的确认机制

    前言 新公司项目使用的消息队列是RabbitMQ,之前其实没有在实际项目上用过RabbitMQ,所以对它的了解都谈不上入门.趁着周末休息的时间也猛补习了一波,写了两个窗体应用,一个消息发布端和消息消费 ...

  3. 如何用 Blazor 实现 Ant Design 组件库

    本文主要分享我创建 Ant Design of Blazor 项目的心路历程,已经文末有一个 Blazor 线上分享预告. Blazor WebAssembly 来了! Blazor 这个新推出的前端 ...

  4. window 查看端口 杀端口

    最近写项目,总是出现端口被占用的问题,原来傻傻的把电脑重启一下,终于有一天受不了了,想要想办法解决.刚开始从网上找了好多教程,发现不行.开始自己尝试,终于,成功的将占用端口的进程杀掉.在此记录下过程( ...

  5. wpf xaml CS0426 错误原因

    wpf  程序集中 类命名空间名称和类名不能相同,否则在 xaml生成 i.g.cs时,会导致 自动生成代码无法推到处是类型还是命名空间的问题.   触发这个错误的条件是类命名空间 与 类名相同 并 ...

  6. SpringMVC最详细笔记partⅠ

    一.springMVC-quickStar 解决maven加载项目过慢 archetypeCatalog internal 导入依赖 <!-- 版本锁定 --> <propertie ...

  7. CF1324A Yet Another Tetris Problem 题解

    原题链接 简要题意: 再简要一波: 每次可以把一个数增加 \(2\),问最后能不能让所有数相等.(也就是抵消掉) 什么?题意变成这样子还做个啥? 你会发现,必须所有数的奇偶性都相同,才可以:反之就不可 ...

  8. 读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理

    本文将通过一个演示工程来快速上手java调用HDFS的常见操作.接下来以创建文件为例,通过阅读HDFS的源码,一步步展开HDFS相关原理.理论知识的说明. 说明:本文档基于最新版本Hadoop3.2. ...

  9. leetcode 签到 836. 矩形重叠

    836. 矩形重叠 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标. 如果相交的面积为正,则称两矩形重叠.需要明确的 ...

  10. 牛客网剑指offer【Python实现】——part2

    不用加减乘除做加法 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. 两个数异或:相当于每一位相加,而不考虑进位: 两个数相与,并左移一位:相当于求得进位: 将上述两步的 ...