当前位置: 首页 > news >正文

python基础-数据类型

基本数据类型

There are only two kinds of programing languages: those people always bitch about and those nobody uses .

                             ---Bjarne Stroustrup

1. 数字类型

Python 语言中总共提供三种数字类型:整型、浮点数、复数

1.1整数类型

进制种类

引导符号

描述

十进制

默认情况 例如:1110,-455

二进制

0b 或0B

由字符0和1组成,例如ob101,0B1011

八进制

0o 或0O

由字符0到7组成,例如:0o711,0O444

十六进制

0x 或0X

由字符0-9、a-f、A-F组成,例如0XACF

整数的理论取值范围(-∞,∞)但是实际情况取决于计算机的运行内存。可以使用内置函数pow(x,y)来测试运算取值范围,函数表示xy

1.2浮点类型

浮点数类型和数学中实数的概念一致,表示带有小数的数值。

浮点数有两种表示方法,十进制表示和科学计数法表示

0.111454   or  1.4e-2

Decimal库提供了高精度浮点运算

1.3.复数类型

复数即数学中的复数

 

 

2.数字类型的计算

操作符运算

操作符

描述

x+y

 

x-y

 

x*y

 

x/y

 

x//y

X与y的整数商,即不大于x与y商的最大整数

x%y

x与y之商的余数,也称为模运算

-y

 

+x

 

X**Y

X的Y次方

 

内置的数值计算函数

函数

描述

abs(x)

X的绝对值

divmod(x,y)

输出为二元组形式,(元组类型)

pow(x,y)

 

Round(x,[n])

对结果进行四舍五入,保留n位小数

Max(x1,x2….xn)

最大值

Min(x1,…xn)

最小值

 

内置的数字类型转换函数

函数

描述

int(x)

将x转换成整数,x可以是字符串or浮点型

float(x)

将x转换成浮点型,x可以是字符串or浮点型

Complex(x)

生成一个复数

 

 

 

 

 

 

3.math库的使用

概述:math库为python内置数学类函数库,总共包括4个数学常数,44个函数

分别包括16个数值表示函数,8个幂对数函数,16个三角对数函数,4个高等特殊函数

使用方法:①import math ②from math import floor

 

π               #3.145926……

e               #2.72…..

ceil(x)           #对x向上取整

floor(x)          #对x向下取值整

pow(x,y)            #x的y次幂

factorial(x)             #x的阶乘,如何x是小数将返回异常

log(x)             #自然对数

Log10(x)           #常用对数

Sq+rt(x)         #x的算术平方根

exp(x)           #x的e次幂

degrees(x)           #将弧度值x转化成角度值

radians(x)            #将角度值转化成弧度值

sin(x)                #x的正弦值

cos(x)               #x的余弦值

tan(x)               #x的正切值

asin(x)               #x的反正弦值

acos(x)              #x的反余弦值

atan(x)              #x的反正切值

 

以上为例举的部分math库函数,还有些可以查阅。

 

 

 

 

 

4.字符串类型以及操作

字符串是字符的序列表示,可以由一对单引号(‘),双引号(“),三引号(“’)构成

字符串以Unicode编码存储,字符串的中文和英文字符都算作1个字符。

 

字符串的基本操作符

操作符

描述

x+y

连接两个字符串

x*n 或n*x

把字符串x复制n遍

x in s

判断x是否为s的子字符串,true or false

Str[i]

返回字符串str的第i个字符

Str[N:M]

切片,返回索引第N到M-1的字串

 

切片示例如下:

str = '0123456789′
print str[0:3]        #截取第一位到第三位的字符
print str[:]          #截取字符串的全部字符
print str[6:]         #截取第七个字符到结尾
print str[:-3]        #截取从头开始到倒数第三个字符之前
print str[2]          #截取第三个字符
print str[-1]         #截取倒数第一个字符
print str[::-1]     #创造一个与原字符串顺序相反的字符串
print str[-3:-1]     #截取倒数第三位与倒数第一位之前的字符
print str[-3:]        #截取倒数第三位到结尾
print str[:-5:-3]    #逆序截取,具体啥意思没搞明白

(后面序列中也一样的操作方法)

 

特殊的格式化控制字符

\a : 蜂鸣,响铃

\b: 回退,向后退一格

\f:  换页

\n: 换行

\r:  回车,光标回到本行首行

\t    水平制表符

\v  垂直制表符

\0    什么也不做

\\    反斜杠

 

内置的字符串处理函数

 

函数

描述

len(x)

返回字符串x的长度

str(x)

返回任意类型x所对应的字符串形式,转格式(改成字符串类型)

chr(x)

返回符unicode编码x对应的单字符

ord(x)

返回x对应的Unicode编码

hex(x)

返回整数x对应的十六进制小数形式字符串

oct(x)

返回整数对应的八进制小数形式字符串

 

 

内置字符串处理方法

方法

描述

str.lower()

返回字符串的小写形式

str.upper()

返回字符串的大写形式

str.islower()

当字符串内字符全小写时,TRUE。

str.isupper()

当字符串内所有字符都大写时,TRUE

str.isprintable()

当字符串所有的字符都可以打印时,TRUE

str.isnumeric()

当字符串全为数字时,True

str.endwith(suffix[,start[,end]])

当str[start:end]以suffix结尾时,返回True

str.startwith(prfix,[start,[end]])

当str[start:end]以prefix开始时,返回True

str.split(sep=None,maxsplit=-1)

返回一个列表,由str根据sep被分割的部分组成

str.count(sub[,start[,end]])

返回sub出现的次数

str.replace(old,new[,count])

将old字符串替换为new,如果由count,则把前count次old出现替换

str.strip([chars])

去掉左侧和右侧中chars中列出的字符

str.join(iterable)

返回一个新的字符串

str.format()

排版格式

 

 

 

 

 

 

format()方法的格式控制

format()方法模板字符串槽除了包括序号,还包括控制信息,槽的样式如下:

{<参数序号>:<格式控制符>}

<填充>

<对齐>

<宽度>

<,>

<.精度>

<类型>

引导符号

用于填充单个字符

<左对齐

>右对齐

^居中

槽设定的宽度

数字的千位分隔符

浮点数,小数部分的精度,字符串的最大输出长度

整数类型:bcdoxx

浮点数类型e,E,f,%

转载于:https://www.cnblogs.com/onewish/p/10110704.html

相关文章:

  • 【FPGA】Xilinx-7系的时钟资源与DDR3配置
  • 谈项目中如何选择框架和库(FEDAY主题分享总结)
  • 如何做线段绕着点旋转一定角度的动画
  • python写商品管理练习
  • React组件设计模式(一)
  • 【技能意志矩阵-skill will matrix】工作中究竟是个人能力更重要,还是我们的积极性更能提高我们的业绩?...
  • Kubernetes-架构路线图
  • libevent的入门学习-库的安装【转】
  • swift - UIWebView 和 WKWebView(iOS12 之后替换UIWebView)
  • jmeter聚合报告详解
  • php中的匿名函数和闭包(closure)
  • nginx rewrite only specific servername to https
  • 闭包总结
  • 浅谈k8s cni 插件
  • Python爬虫--- 1.3 BS4库的解析器
  • 4个实用的微服务测试策略
  • C# 免费离线人脸识别 2.0 Demo
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • JS变量作用域
  • js对象的深浅拷贝
  • JS专题之继承
  • spring-boot List转Page
  • 汉诺塔算法
  • 回顾2016
  • 机器人定位导航技术 激光SLAM与视觉SLAM谁更胜一筹?
  • 基于web的全景—— Pannellum小试
  • 解析带emoji和链接的聊天系统消息
  • 使用 QuickBI 搭建酷炫可视化分析
  • 使用agvtool更改app version/build
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 函数计算新功能-----支持C#函数
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • ​flutter 代码混淆
  • ​力扣解法汇总946-验证栈序列
  • ###51单片机学习(2)-----如何通过C语言运用延时函数设计LED流水灯
  • #define与typedef区别
  • #NOIP 2014#Day.2 T3 解方程
  • (9)STL算法之逆转旋转
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (六)软件测试分工
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .NET 8.0 发布到 IIS
  • .NET/C# 中设置当发生某个特定异常时进入断点(不借助 Visual Studio 的纯代码实现)
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • @CacheInvalidate(name = “xxx“, key = “#results.![a+b]“,multi = true)是什么意思
  • [ C++ ] template 模板进阶 (特化,分离编译)
  • [ajaxupload] - 上传文件同时附件参数值
  • [Android Studio] 开发Java 程序
  • [C/C++] C/C++中数字与字符串之间的转换
  • [English]英语积累本
  • [ERROR] 不再支持目标选项 5。请使用 7 或更高版本
  • [ffmpeg] x264 配置参数解析
  • [IDF]啥?