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--'



目录
相关文章
|
5月前
|
测试技术 索引 Python
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(一)
本文提供了Python接口自动化测试中的编程练习,包括计算器、猜数字、猜拳和九九乘法表等经典问题,涵盖了数据类型、运算、循环、条件控制等基础知识的综合应用。
55 1
|
1月前
|
Python
Python 中一些常见的数据类型
Python 中一些常见的数据类型
92 8
|
2月前
|
Python
Python中不同数据类型之间如何进行转换?
Python中不同数据类型之间如何进行转换?
29 6
|
2月前
|
存储 开发者 Python
Python 的数据类型
Python 的数据类型
44 6
|
3月前
|
Python
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
本篇将详细介绍Python中的常见数据类型转换方法以及 `NoneType` 的概念。包括如何在整数、浮点数、字符串等不同数据类型之间进行转换,并展示如何使用 `None` 进行初始赋值和处理特殊情况。通过本篇的学习,用户将深入理解如何处理不同类型的数据,并能够在代码中灵活使用 `None` 处理未赋值状态。
69 2
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
|
2月前
|
机器学习/深度学习 存储 数据挖掘
Python 编程入门:理解变量、数据类型和基本运算
【10月更文挑战第43天】在编程的海洋中,Python是一艘易于驾驭的小船。本文将带你启航,探索Python编程的基础:变量的声明与使用、丰富的数据类型以及如何通过基本运算符来操作它们。我们将从浅显易懂的例子出发,逐步深入到代码示例,确保即使是零基础的读者也能跟上步伐。准备好了吗?让我们开始吧!
35 0
|
3月前
|
编译器 数据安全/隐私保护 Python
Python--基本数据类型
【10月更文挑战第4天】
|
3月前
|
存储 Python
python数据类型、debug工具(一)
python数据类型、debug工具(一)
|
3月前
|
Python
[oeasy]python036_数据类型有什么用_type_类型_int_str_查看帮助
本文回顾了Python中`ord()`和`chr()`函数的使用方法,强调了这两个函数互为逆运算:`ord()`通过字符找到对应的序号,`chr()`则通过序号找到对应的字符。文章详细解释了函数参数类型的重要性,即`ord()`需要字符串类型参数,而`chr()`需要整数类型参数。若参数类型错误,则会引发`TypeError`。此外,还介绍了如何使用`type()`函数查询参数类型,并通过示例展示了如何正确使用`ord()`和`chr()`进行转换。最后,强调了在函数调用时正确传递参数类型的重要性。
32 3
|
4月前
|
存储 Java C++
30天拿下Python之数据类型
30天拿下Python之数据类型
45 4