python笔记二(数据类型和变量、编码方式、字符串的编码、字符串的格式化)
一、数据类型
python可以直接处理的数据类型有:整数、浮点数、字符串、布尔值、空值。
整数
浮点数
字符串:双引号内嵌套单引号,可以输出 i'm ok.
也可以用\来实现,\n 换行 \t table
多行字符串用 ''' '''
布尔值: 可以对布尔值进行与或非运算/ 与and 或or 非not
空值
二、变量
a = 1/ a = "nadech" 与java不同,python在声明一个变量的时候不用指定变量的类型,直接赋值就可以了
在 执行a =1 的时候,python解释器实际上执行了两步操作:创建整数1;声明变量a,并且把变量a指向整数1
常量PI,即使声明为了常量,但是python没有真正的常量
python中整数除法是精确的:10/3 =3.333333333333 地板除法:10//3=3
保留两个小数点
a = 1
b = 3
print(a/b)
#方法一:
print(round(a/b,2))
#方法二:
print(format(float(a)/float(b),'.2f'))
#方法三:
print ('%.2f' %(a/b))
三、编码方式
几种编码的方式和编码的进化!!!!
ASCII编码,只能编码127个字符,所以数量有所限制
GB2312(2个字节)中国用来编写中文并且建立在ASCII码上,不能与ASCII冲突。之后,韩国、日本都有自己的编码 and so on.
Unicode编码(2个字节),把所有语言都统一到一套编码里。缺点是2个字节,浪费存储空间。
UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。UTF-8的好处就是兼容ASCII码,节省空间。
用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件。
浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器。
四、python字符串的编码/字符串的格式化输出
单个字符的编码:
>>> ord('爱')
29233
>>> chr(29233)
'爱'
>>>
多个字符的编码:
当字符的内容只包含ASCII编码的内容时,可以直接使用:
>>> b"I LOVE YOU!"
b'I LOVE YOU!'
>>> "I LOVE YOU!".encode()
b'I LOVE YOU!'
多个字符且包含中文的时候,只能使用encode和decode
#从这里也可以看出在utf-8的编码中,一个中文需要三个字节
>>> "我爱你".encode("utf-8")
b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0'
#这里特别要注意b'\xe6'和‘\xe6'表示的完全不一样,前边表示一个bytes类型的数据,后者是一个str类型的字符串
>>> b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0'.decode("utf-8")
'我爱你'
len()可以用来计算str或者是bytes的长度
>>> len('我爱你')
3
>>> len( b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0')
9
字符串的格式化,除了%s 还有%d %f %x等占位符,但是由于都可以用%s来输出,所以就没有必要使用其他的了。
除此之外还有 str.format()方式也可以用来格式化字符串,但是没有%s好用。但是当输入的字符串内容本身含有%,例如 7%时,需要使用 %%转义符
>>> "hello %s"%"nadech"
'hello nadech' >>> nadech = "YGR"
>>> "hello %s"%nadech
'hello YGR’
python笔记二(数据类型和变量、编码方式、字符串的编码、字符串的格式化)的更多相关文章
- [Python] 文科生零基础学编程系列二——数据类型、变量、常量的基础概念
上一篇:[Python] 文科生零基础学编程系列--对象.集合.属性.方法的基本定义 下一篇: (仍先以最简单的Excel的VBA为例,语法与Python不同,但概念和逻辑需要理解透彻) p.p1 { ...
- python教程1:Python基础之数据类型和变量、字符串和编码
视频链接:http://www.bilibili.com/video/av10730372/ 我是在Linux下玩python的,Linux下默认安装python,直接打个pyhon3就好了,pyth ...
- 学习Python笔记---变量和简单数据类型
首先声明,这个是个人在自学的一些笔记,因为是小白,刚接触Python,之前也没有过类似的经验,所以很多东西对于其他人来说可能是小白级别的,写出来没有其他的意思就是自己整理然后记录一下,顺便分享出来,而 ...
- python学习之路-基本数据类型1 变量的概念、数字、字符串
1 什么是数据类型? 每种编程语言都有自己的数据类型,用于标识计算机可以认识的数据,Python中主要的数据类型为字符串,整数,浮点数,列表,元祖,字典,集合七种主要的数据类型,其中以列表,字典为最主 ...
- python基础(二)----数据类型
Python基础第二章 二进制 字符编码 基本数据类型-数字 基本数据类型-字符串 基本数据类型-列表 基本数据类型-元组 可变.不可变数据类型和hash 基本数据类型-字典 基本数据类型-集合 二进 ...
- 第三篇:python基础之数据类型与变量
阅读目录 一.变量 二.数据类型 2.1 什么是数据类型及数据类型分类 2.2 标准数据类型: 2.2.1 数字 2.2.1.1 整型: 2.2.1.2 长整型long: 2.2.1.3 布尔bool ...
- 第二篇.1、python基础之数据类型与变量
一.变量 1 什么是变量之声明变量 #变量名=变量值 age=18 gender1='male' gender2='female' 2 为什么要有变量 变量作用:“变”=>变化,“量”=> ...
- python基础之数据类型与变量
一.变量 1 什么是变量之声明变量 #变量名=变量值age=18gender1='male' gender2='female' 2 为什么要有变量 变量作用:"变"=>变化, ...
- (八)python的简单数据类型和变量
什么是数据类型? 程序的本质就是驱使计算机去处理各种状态的变化,这些状态分为很多种. 例如英雄联盟游戏,一个人物角色有名字,钱,等级,装备等特性,大家第一时间会想到这么表示 名字:德玛西亚------ ...
随机推荐
- Python基础数据类型之字典
基础数据类型之字典 ps:数据类型划分:可变数据类型和不可变数据类型. 不可变数据类型:元组(tupe).布尔值(bool).整数型(int).字符串(str).不可变数据类型也称为可哈希. 可变 ...
- Java面向对象之构造函数 入门实例
一.基础概念 1.什么时候定义构造函数: 当对象创建时,需要对象必须具备的内容,通过构造函数完成. 2.一般函数和构造函数的区别: 定义上:构造函数只为对象的初始化,只执行一次.一般函数定义对象应该具 ...
- 我做的python常用的小技巧
在python编码过程中,总会遇到各种各样的小问题,我想着记录下来,以备查用,总结过去,是为了更好的思考与进步. 一. 去除变量中(标题中)多余的字符 数据处理过程中,遇到这样的情况: y=['月份' ...
- Django之auth模块(用户认证)
auth模块简介 auth模块是对登录认证方法的一种封装,之前我们获取用户输入的用户名及密码后需要自己从user表里查询有没有用户名和密码符合的对象, 而有了auth模块之后就可以很轻松的去验证用户的 ...
- hdu-3348 coins---贪心
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3348 题目大意: 给你一个价格,还有面值分别为1,5,10,50,100(单位:毛)纸币的数量,要你 ...
- hdu1009 FatMouse' Trade---贪心
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1009 题意:一共有n个房子,每个房子里有老鼠喜欢吃的javabeans,但是每个房间里的javabea ...
- html5之表格元素
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ueditor图片无法左右对齐的解决
找到ueditor的配置文件ueditor.config.js,里面搜索 whiteList 然后在下面找到img,在里面添加 'style'. 添加后如下: img : [ 'src', 'alt' ...
- HtmlUnit入门二
由于在在WebClient中,默认支持对CSS,JavaScript的解析,因此会总是会出现很多错误信息,并且执行速度也很慢. 因此,我们可以选择关闭掉WebClient对CSS,JavaScript ...
- [HNOI 2016]最小公倍数
Description 题库链接 给定一张 \(N\) 个顶点 \(M\) 条边的无向图(顶点编号为 \(1,2,\cdots,n\) ),每条边上带有权值.所有权值都可以分解成 \(2^a\time ...