python-基本数据类型一

简介: hello,这里是Token_w的文章,主要讲解python的基础学习,希望对大家有所帮助整理不易,感觉还不错的可以点赞收藏评论支持,感谢!

hello,这里是Token_w的文章,主要讲解python的基础学习,希望对大家有所帮助

整理不易,感觉还不错的可以点赞收藏评论支持,感谢!


有没有一个人,你想给TA传个小纸条?用恺撒密码一展身手吧。


知识点

  • 数字类型:整数类型、浮点数类型和复数类型
  • 数字类型的运算:数值运算操作符、数值运算函数
  • 字符串类型及格式化:索引、切片、基本的format()格式化方法
  • 字符串类型的操作:字符串操作符、处理函数和处理方法
  • 类型判断和类型间转换


知识导图


1、数字类型


1.1 数字类型


  • Python语言提供3种数字类型:整数类型、浮点数类型和复数类型,分别对应数学中的整数、实数和复数。


  • 1010是一个整数类型,10.10是一个浮点数类型,10 + 10j是一个复数类型。



1.2 整数类型


  • 与数学中的整数概念一致,没有取值范围限制


  • 整数类型有4种进制表示:十进制、二进制、八进制和十六进制。默认情况,整数采用十进制,其他进制需要增加引导符号



注:不同进制的整数之间可以直接运算


1.3 浮点数类型


  • 带有小数点及小数的数字


  • Python语言中的浮点数类型必须带有小数部分,小数部分可以是0。例如:1010是整数,1010.0是浮点数。


  • 浮点数有2种表示方法:十进制形式的一般表示和科学计数法表示。除十进制外,浮点数没有其他进制表示形式。


  • 下面是浮点数类型的例子:


  • 1010.0, -1010., 1.01e3, -1.01E-3
  • 科学计数法使用字母e或者E作为幂的符号,以10为基数,含义如下:
  • e = a*10^b


上例中,1.01e3值为1010.0;-1.01E-3值为0.00101。


Python浮点数类型的数值范围和小数精度受不同计算机系统的限制。除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”。


print(1234567890.987654321 * 1234567890.987654321)
# 1.5241578774577044e+18
print(9876543210.123456789 / 1234567890.987654321)
# 8.000000066600002


1.4 复数类型


  • 复数类型表示数学中的复数。复数有一个基本单位元素j,叫作“虚数单位”。含有虚数单位的数被称为复数。例如:
  • 11.3+4j -5.6+7j 1.23e-4+5.67e+89j


  • Python语言中,复数可以看作是二元有序实数对(a, b),表示为:a + bj,其中,a是实数部分,简称实部,b是虚数部分,简称虚部。虚数部分通过后缀“J”或者“j”来表示。需要注意,当b为1时,1不能省略,即 1j表示复数,而j则表示Python程序中的一个变量。


  • 复数类型中实部和虚部都是浮点类型,对于复数z,可以用z.real和z.imag分别获得它的实数部分和虚数部分


print((1.23e4+5.67e4j).real)
# 12300.0
print((1.23e4+5.67e4j).imag)
# 56700.0
print(1.23e4+5.67e4j.imag     # 先获得5.67e4j的虚部,再与1.23e4进行求和计算)
# 69000.0

2、数字类型的运算


2.1 数值运算操作符


  • Python提供了9个基本的数值运算操作符



x op= y 等价于 x = x op y


x = 99
x **= 3   # 与x = x**3等价
print(x)
# 970299


数值运算可能改变结果的数据类型,类型的改变与运算符有关,有如下基本规则:


  • 整数和浮点数混合运算,输出结果是浮点数;


  • 整数之间运算,产生结果类型与操作符相关,/ 运算的结果是浮点数;


  • 整数或浮点数与复数运算,输出结果是复数。


print(1010 / 10 )        # / 运算的结果是浮点数
# 101.0
print(1010.0 // 3 )      # 浮点数与整数运算,产生结果是浮点数
# 336.0
print(1010.0 % 3 )       # 浮点数与整数运算,产生结果是浮点数
# 2.0
print(10 - 1 + 1j  )
# (9+1j)


  • Python解释器提供了一些内置函数,在这些内置函数之中,有6个函数与数值运算相关




3、字符串类型及格式化


3.1 字符串类型


  • 字符串是字符的序列表示,根据字符串的内容多少分为单行字符串和多行字符串。
  • 单行字符串可以由一对单引号(')或双引号(")作为边界来表示,单引号和双引号作用相同。
  • 多行字符串可以由一对三单引号(‘’')或三双引号(“”")作为边界来表示,两者作用相同。


print('这是"单行字符串"')
# 这是"单行字符串"
print("这是'单行字符串'")
# 这是'单行字符串'
print("""这是'多行字符串'的第一行
这是'多行字符串'的第二行
""")
'''
这是'多行字符串'的第一行
这是'多行字符串'的第二行
'''
  • Python语言转义符: \
  • 例如:\n表示换行、\表示反斜杠、'表示单引号、"表示双引号、\t表示制表符(TAB)等。


print("既需要'单引号'又需要\"双引号\"")
# 既需要'单引号'又需要"双引号"


3.2 字符串的索引


  • 字符串是一个字符序列:字符串最左端位置标记为0,依次增加。对字符串中某个字符的检索被称为索引。索引的使用方式如下:
  • <字符串或字符串变量>[序号]

  • 如果字符串长度为L,正向递增需要以最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1;反向递减序号以最右侧字符序号为-1,向左依次递减,最左侧字符序号为-L。

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



print("青青子衿,悠悠我心。"[-5])
# '悠'
print(s = "青青子衿,悠悠我心。")
print(s[5])
# '悠'

3.3 字符串的切片


  • 对字符串中某个子串或区间的检索被称为切片。切片的使用方式如下:
    <字符串或字符串变量>[N: M] #包含N不包含M


print("青青子衿,悠悠我心。"[8:4])
# ''
print("青青子衿,悠悠我心。"[:4])
# '青青子衿'
print("青青子衿,悠悠我心。"[5:])
# '悠悠我心。'
print(print("青青子衿,悠悠我心。"[5:]))
# 悠悠我心。


3.4 format()方法的基本使用


  • 字符串format()方法的基本使用格式是:
    <模板字符串>.format(<逗号分隔的参数>)



其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用大括号({})表示,对应format()方法中逗号分隔的参数。


print("{}曰:学而时习之,不亦说乎。".format("孔子"))
# '孔子曰:学而时习之,不亦说乎。'



  • 如果模板字符串有多个槽,且槽内没有指定序号,则按照槽出现的顺序分别对应.format()方法中的不同参数。

print("{}曰:学而时习之,不亦{}。".format("孔子","说乎"))
# '孔子曰:学而时习之,不亦说乎。'


可以通过format()参数的序号在模板字符串槽中指定参数的使用,参数从0开始编号


print("{1}曰:学而时习之,不亦{0}。".format("说乎","孔子"))
# '孔子曰:学而时习之,不亦说乎。'
print("{1}曰:{{学而时习之,不亦{0}}}。".format("说乎","孔子"))
# '孔子曰:{学而时习之,不亦说乎}。'

3.5 format()方法的格式控制


  • format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信息。
    {<参数序号>: <格式控制标记>}
  • 其中,格式控制标记用来控制参数显示时的格式 。格式控制标记包括:<填充><对齐><宽度>,<.精度><类型>6个字段,这些字段都是可选的,可以组合使用


  • <填充>、<对齐>和<宽度>主要用于对显示格式的规范。


  • 宽度指当前槽的设定输出字符宽度,如果该槽参数实际值比宽度设定值大,则使用参数实际长度。如果该值的实际位数小于指定宽度,则按照对齐指定方式在宽度内对齐,默认以空格字符补充。


  • 对齐字段分别使用<、>和^三个符号表示左对齐、右对齐和居中对齐。


  • 填充字段可以修改默认填充字符,填充字符只能有一个。


s = "等级考试"
print("{:25}".format(s)) #左对齐,默认
# '等级考试                     '
print("{:^25}".format(s)) #居中对齐
# '          等级考试           '
print("{:>25}".format(s)) #右对齐
# '                     等级考试'
print("{:*^25}".format(s)) #居中对齐且填充*号
# '**********等级考试***********'
print("{:+^25}".format(s)) #居中对齐且填充+号
# '++++++++++等级考试+++++++++++'
print("{:十^25}".format(s)) #居中对齐且填充汉字“十”
# '十十十十十十十十十十等级考试十十十十十十十十十十十'
print("{:^1}".format(s)) #z指定宽度为1,不足变量s的宽度
# '等级考试'
  • <.精度><类型>主要用于对数值本身的规范
  • <.精度>由小数点(.)开头。对于浮点数,精度表示小数部分输出的有效位数。对于字符串,精度表示输出的最大长度。小数点可以理解为对数值的有效截断。


print("{:.2f}".format(12345.67890))
# '12345.68'
print("{:>25.3f}".format(12345.67890))
# '                12345.679'
print("{:.5}".format("全国计算机等级考试"))
# '全国计算机'


  • <类型>表示输出整数和浮点数类型的格式规则。
  • n 对于整数类型,输出格式包括6种:
    • b: 输出整数的二进制方式;


• c: 输出整数对应的Unicode字符;

• d: 输出整数的十进制方式;

• o: 输出整数的八进制方式;

• x: 输出整数的小写十六进制方式;

• X: 输出整数的大写十六进制方式;


print("{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425))
# '110101001,Ʃ,425,651,1a9,1A9'
  • 对于浮点数类型,输出格式包括4种:
    • e: 输出浮点数对应的小写字母e的指数形式;


• E: 输出浮点数对应的大写字母E的指数形式;

• f: 输出浮点数的标准浮点形式;

• %: 输出浮点数的百分形式。


print("{0:e},{0:E},{0:f},{0:%}".format(3.14))
# '3.140000e+00,3.140000E+00,3.140000,314.000000%'
print("{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(3.14)) # 对比输出
# '3.14e+00,3.14E+00,3.14,314.00%'


  • 常用的format()方法格式控制信息


print("{:.2f}".format(3.1415926)) # 输出小数点后两位
# '3.14'
print("{:x}".format(1010)) # 输出整数的十六机制形式
# '3f2'
print("{:.5}".format("这是一个很长的字符串")) # 输出字符串的前5位
# '这是一个很'
print("{:-^10}".format("PYTHON")) # 居中并填充
# '--PYTHON--'



目录
相关文章
|
2月前
|
测试技术 索引 Python
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(一)
本文提供了Python接口自动化测试中的编程练习,包括计算器、猜数字、猜拳和九九乘法表等经典问题,涵盖了数据类型、运算、循环、条件控制等基础知识的综合应用。
33 1
|
2月前
|
数据处理 Python
【编程入门必读】Python数据类型大揭秘:掌握这些,让你的代码瞬间高大上!
【8月更文挑战第22天】Python提供多样数据结构支持编程需求。基本数据类型如数值(整型、浮点型、复数)、布尔型、字符串;复合数据类型含列表(有序、可变)、元组(有序、不可变)、字典(键值对)、集合(无序、唯一元素)。还有特殊类型如`NoneType`和`range`。Python内置数据类型转换如`int()`, `float()`, `str()`等方便使用。掌握这些类型有助于编写高效Python代码。
26 0
|
3天前
|
Python
[oeasy]python036_数据类型有什么用_type_类型_int_str_查看帮助
本文回顾了Python中`ord()`和`chr()`函数的使用方法,强调了这两个函数互为逆运算:`ord()`通过字符找到对应的序号,`chr()`则通过序号找到对应的字符。文章详细解释了函数参数类型的重要性,即`ord()`需要字符串类型参数,而`chr()`需要整数类型参数。若参数类型错误,则会引发`TypeError`。此外,还介绍了如何使用`type()`函数查询参数类型,并通过示例展示了如何正确使用`ord()`和`chr()`进行转换。最后,强调了在函数调用时正确传递参数类型的重要性。
10 3
|
12天前
|
存储 Java C++
30天拿下Python之数据类型
30天拿下Python之数据类型
21 4
|
1月前
|
存储 数据挖掘 程序员
揭秘Python:掌握这些基本语法和数据类型,你将拥有编程世界的钥匙!
【9月更文挑战第3天】Python 是一种简洁强大的高级编程语言,其清晰的语法和丰富的功能深受程序员喜爱。本文从基本语法入手,介绍 Python 的代码结构特点,如通过缩进区分代码块,使逻辑更清晰。接着详细讲解主要数据类型:数值型、字符串、列表、元组、集合与字典,每个类型均附有示例代码,帮助初学者快速掌握 Python,为后续学习打下坚实基础。
32 2
|
2月前
|
索引 Python
Python 中常见的内置数据类型
【8月更文挑战第29天】
24 3
|
2月前
|
存储 测试技术 数据格式
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(二)
本文通过数据类型转换和文件读取的练习,复习了Python中的数据类型、循环、条件判断、内置函数等基础知识,并演示了如何将字符串数据转换为字典列表,以及如何从文本文件中读取和转换数据。
33 1
|
2月前
|
测试技术 Python 容器
Python接口自动化测试框架(基础篇)-- 常用数据类型dict
这篇文章详细介绍了Python中字典(dict)数据类型的使用,包括字典的创建、取值、增删改操作以及内置函数的应用,并探讨了字典的扩展特性,如键的唯一性和不可变性。
16 0
Python接口自动化测试框架(基础篇)-- 常用数据类型dict
|
2月前
|
测试技术 Python
Python接口自动化测试框架(基础篇)-- 常用数据类型Number
这篇文章是关于Python接口自动化测试中常用数据类型Number的基础介绍,涵盖了int、float、bool类型以及数学函数和常量的使用,强调了这些数据类型在自动化测试框架中的广泛应用。
15 0
Python接口自动化测试框架(基础篇)-- 常用数据类型Number
|
2月前
|
存储 数据采集 人工智能
一:《Python基础语法汇总》— 变量与数据类型
【8月更文挑战第15天】本篇文章详细讲述了关于变量的命名规范,id()函数及Python的数据类型与强制转换
24 2