python的基本数据类型

系统 1506 0

1. python的基本数据类型

  • Number(数字)
  • String(字符串)
  • Tuple(元组)
  • List(列表)
  • Set(集合)
  • Dictionary(字典)

其中前3个为不可变数据类型,后三个为可变数据类型。

1.1 数字类型–Number

支持int, float, bool,complex

1.1.1 数据运算

基本运算规则不变,以下展示鲜知的。

另外进行混合运算时,整数会自动转为浮点数。

            
              
                # 除法得到一个整数,单个斜杠得到浮点数
              
              
                print
              
              
                (
              
              
                4
              
              
                /
              
              
                9
              
              
                )
              
              
                print
              
              
                (
              
              
                4
              
              
                //
              
              
                9
              
              
                )
              
              
                print
              
              
                (
              
              
                2
              
              
                **
              
              
                5
              
              
                )
              
            
          

0.4444444444444444
0
32

1.2 字符串类型–String

字符串使用单引号或双引号,同时支持使用\转义特殊字符
Python没有单独的字符类型,一个字符就是长度为1的字符串。
\可以作为转义符,续行符
使用’’’ ‘’’ 也可以实现字符串换行,当字符串有多行时,打印结果也是多行

**注意:**字符串是不可变的,不能指定某一位置上的字符串进行替换

            
              
                str
              
              
                =
              
              
                '123456789abcdefghi'
              
              
                # 字符串截取
              
              
                print
              
              
                (
              
              
                str
              
              
                [
              
              
                5
              
              
                ]
              
              
                )
              
              
                print
              
              
                (
              
              
                str
              
              
                [
              
              
                0
              
              
                :
              
              
                5
              
              
                ]
              
              
                )
              
              
                print
              
              
                (
              
              
                str
              
              
                [
              
              
                2
              
              
                :
              
              
                -
              
              
                5
              
              
                ]
              
              
                )
              
              
                print
              
              
                (
              
              
                str
              
              
                [
              
              
                0
              
              
                :
              
              
                ]
              
              
                )
              
              
                print
              
              
                (
              
              
                str
              
              
                [
              
              
                0
              
              
                :
              
              
                -
              
              
                1
              
              
                ]
              
              
                )
              
              
                # 字符串拼接
              
              
                print
              
              
                (
              
              
                str
              
              
                +
              
              
                '----test'
              
              
                )
              
              
                print
              
              
                (
              
              
                str
              
              
                *
              
              
                2
              
              
                )
              
            
          

6
12345
3456789abcd
123456789abcdefghi
123456789abcdefgh
123456789abcdefghi----test
123456789abcdefghi123456789abcdefghi

            
              
                # 字符串转义
              
              
                print
              
              
                (
              
              
                'sadfasdf\nadf\nta\tsd'
              
              
                )
              
            
          

sadfasdf
adf
ta sd

            
              
                # 字符串换行
              
              
str1 
              
                =
              
               'asdfdsafs\
n12321321\
t12321312'


              
                print
              
              
                (
              
              str1
              
                )
              
              
                print
              
              
                (
              
              
                '\n'
              
              
                )
              
              
str2 
              
                =
              
              
                '''aafasdfsdafsd
123123123123
&*(&(&(())))'''
              
              
                print
              
              
                (
              
              str2
              
                )
              
            
          

asdfdsafsn12321321t12321312

aafasdfsdafsd
123123123123
&*(&(&(())))

            
              
                # 字符串替换 字符串是不可变变量,如下替换方法报错
              
              
                str
              
              
                =
              
              
                'abcd1234abcd1234'
              
              
                str
              
              
                [
              
              
                2
              
              
                ]
              
              
                =
              
              
                'F'
              
              
                str
              
              
                [
              
              
                2
              
              
                :
              
              
                3
              
              
                ]
              
              
                =
              
              
                'Fs'
              
            
          

TypeError Traceback (most recent call last)

in ()
1 # 字符串替换 字符串是不可变变量,如下替换方法报错
2 str = ‘abcd1234abcd1234’
----> 3 str[2] = ‘F’
4 str[2:3] = ‘Fs’

TypeError: ‘str’ object does not support item assignment

1.2.1 String – replace

  • replace 三个参数其中第三个参数可选, 表示从做到右替换多少个字符
  • 默认情况下, 替换所有字符
            
              
                str
              
              
                =
              
              
                'this is a test'
              
              
                print
              
              
                (
              
              
                str
              
              
                .
              
              replace
              
                (
              
              
                'i'
              
              
                ,
              
              
                'I'
              
              
                ,
              
              
                1
              
              
                )
              
              
                )
              
            
          

thIs is a test

1.2.2 格式化输出

            
              
                print
              
              
                (
              
              
                "我叫 %s 今年 %d 岁!"
              
              
                %
              
              
                (
              
              
                '小明'
              
              
                ,
              
              
                10
              
              
                )
              
              
                )
              
            
          

我叫 小明 今年 10 岁!

1.3 集合 List

  • List的一些操作与String基本相同但是集合是可变的

  • 在替换集合中的元素的时候可以使用索引的方式直接替换

  • 行集合替换时, 先删除该位置上的元素,再将要替换的值插入该位置上。

  • 换目标为一个集合, 接将值插入该位置后

  • 换目标为一个元素,则直接进行类型替换

            
              
                list
              
              
                =
              
              
                [
              
              
                'abcd'
              
              
                ,
              
              
                786
              
              
                ,
              
              
                2.23
              
              
                ,
              
              
                'runoob'
              
              
                ,
              
              
                70.2
              
              
                ]
              
              
tinylist 
              
                =
              
              
                [
              
              
                123
              
              
                ,
              
              
                'runoob'
              
              
                ]
              
              
                print
              
              
                (
              
              
                list
              
              
                )
              
              
                # 输出完整列表
              
              
                print
              
              
                (
              
              
                list
              
              
                [
              
              
                0
              
              
                ]
              
              
                )
              
              
                # 输出列表第一个元素
              
              
                print
              
              
                (
              
              
                list
              
              
                [
              
              
                1
              
              
                :
              
              
                3
              
              
                ]
              
              
                )
              
              
                # 从第二个开始输出到第三个元素
              
              
                print
              
              
                (
              
              
                list
              
              
                [
              
              
                2
              
              
                :
              
              
                ]
              
              
                )
              
              
                # 输出从第三个元素开始的所有元素
              
              
                print
              
              
                (
              
              tinylist 
              
                *
              
              
                2
              
              
                )
              
              
                # 输出两次列表
              
              
                print
              
              
                (
              
              
                list
              
              
                +
              
               tinylist
              
                )
              
              
                # 连接列表
              
            
          

[‘abcd’, 786, 2.23, ‘runoob’, 70.2]
abcd
[786, 2.23]
[2.23, ‘runoob’, 70.2]
[123, ‘runoob’, 123, ‘runoob’]
[‘abcd’, 786, 2.23, ‘runoob’, 70.2, 123, ‘runoob’]

            
              
                # 集合元素替换
              
              
                list
              
              
                [
              
              
                1
              
              
                :
              
              
                2
              
              
                ]
              
              
                =
              
              
                [
              
              
                121
              
              
                ,
              
              
                'AAAAAA'
              
              
                ]
              
              
                print
              
              
                (
              
              
                list
              
              
                )
              
              
                list
              
              
                [
              
              
                1
              
              
                ]
              
              
                =
              
              
                [
              
              
                0
              
              
                ,
              
              
                1
              
              
                ]
              
              
                print
              
              
                (
              
              
                list
              
              
                )
              
            
          

[‘abcd’, 121, ‘AAAAAA’, 2.23, ‘runoob’, 70.2]
[‘abcd’, [0, 1], ‘AAAAAA’, 2.23, ‘runoob’, 70.2]

  • 进行集合截取时,可输入第三个参数即步长
            
              
                # 集合截取
              
              
                list
              
              
                =
              
              
                [
              
              
                1
              
              
                ,
              
              
                2
              
              
                ,
              
              
                3
              
              
                ,
              
              
                4
              
              
                ,
              
              
                5
              
              
                ,
              
              
                6
              
              
                ,
              
              
                7
              
              
                ,
              
              
                8
              
              
                ,
              
              
                9
              
              
                ,
              
              
                0
              
              
                ]
              
              
                print
              
              
                (
              
              
                list
              
              
                [
              
              
                0
              
              
                :
              
              
                10
              
              
                :
              
              
                2
              
              
                ]
              
              
                )
              
              
                # 负向截取
              
              
                print
              
              
                (
              
              
                list
              
              
                [
              
              
                -
              
              
                1
              
              
                :
              
              
                :
              
              
                -
              
              
                1
              
              
                ]
              
              
                )
              
            
          

[1, 3, 5, 7, 9]
[0, 9, 8, 7, 6, 5, 4, 3, 2, 1]

1.4 Tuple–元组

  • 元组中的元素不能修改,元组写在小括号里
  • 当只有一个元素在元组中时,需要在该元素后加逗号,否则类型不是元组类型
            
              
                tuple
              
              
                =
              
              
                (
              
              
                'abcd'
              
              
                ,
              
              
                786
              
              
                ,
              
              
                2.23
              
              
                ,
              
              
                'runoob'
              
              
                ,
              
              
                70.2
              
              
                )
              
              
tup1 
              
                =
              
              
                (
              
              
                20
              
              
                )
              
              
                # 一个元素,需要在元素后添加逗号
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              tup1
              
                )
              
              
                )
              
              
tup2 
              
                =
              
              
                (
              
              
                20
              
              
                ,
              
              
                )
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              tup2
              
                )
              
              
                )
              
            
          


1.5 Set–集合

注意:

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

            
              student 
              
                =
              
              
                {
              
              
                'Tom'
              
              
                ,
              
              
                'Jim'
              
              
                ,
              
              
                'Mary'
              
              
                ,
              
              
                'Tom'
              
              
                ,
              
              
                'Jack'
              
              
                ,
              
              
                'Rose'
              
              
                }
              
              
                print
              
              
                (
              
              student
              
                )
              
              
                # 输出集合,重复的元素被自动去掉
              
              
                # 成员测试
              
              
                if
              
              
                'Rose'
              
              
                in
              
               student 
              
                :
              
              
                print
              
              
                (
              
              
                'Rose 在集合中'
              
              
                )
              
              
                else
              
              
                :
              
              
                print
              
              
                (
              
              
                'Rose 不在集合中'
              
              
                )
              
              
                # set可以进行集合运算
              
              
a 
              
                =
              
              
                set
              
              
                (
              
              
                'abracadabra'
              
              
                )
              
              
b 
              
                =
              
              
                set
              
              
                (
              
              
                'alacazam'
              
              
                )
              
              
                print
              
              
                (
              
              a
              
                )
              
              
                print
              
              
                (
              
              a 
              
                -
              
               b
              
                )
              
              
                # a 和 b 的差集
              
              
                print
              
              
                (
              
              a 
              
                |
              
               b
              
                )
              
              
                # a 和 b 的并集
              
              
                print
              
              
                (
              
              a 
              
                &
              
               b
              
                )
              
              
                # a 和 b 的交集
              
              
                print
              
              
                (
              
              a 
              
                ^
              
               b
              
                )
              
              
                # a 和 b 中不同时存在的元素
              
            
          

{‘Rose’, ‘Jack’, ‘Mary’, ‘Tom’, ‘Jim’}
Rose 在集合中
{‘b’, ‘d’, ‘c’, ‘r’, ‘a’}
{‘b’, ‘d’, ‘r’}
{‘c’, ‘z’, ‘b’, ‘d’, ‘l’, ‘r’, ‘m’, ‘a’}
{‘c’, ‘a’}
{‘z’, ‘b’, ‘d’, ‘l’, ‘r’, ‘m’}

1.6 字典 – dictionary

  • 空字典使用{}, 空Set使用Set()
            
              
                # 创建字典对象的方法
              
              
dict1 
              
                =
              
              
                {
              
              
                'name'
              
              
                :
              
              
                'runoob'
              
              
                ,
              
              
                'code'
              
              
                :
              
              
                1
              
              
                ,
              
              
                'site'
              
              
                :
              
              
                'www.runoob.com'
              
              
                }
              
              
dict2 
              
                =
              
              
                dict
              
              
                (
              
              
                [
              
              
                (
              
              
                'Runoob'
              
              
                ,
              
              
                1
              
              
                )
              
              
                ,
              
              
                (
              
              
                'Google'
              
              
                ,
              
              
                2
              
              
                )
              
              
                ,
              
              
                (
              
              
                'Taobao'
              
              
                ,
              
              
                3
              
              
                )
              
              
                ]
              
              
                )
              
              
dict3 
              
                =
              
              
                dict
              
              
                (
              
              Runoob
              
                =
              
              
                1
              
              
                ,
              
               Google
              
                =
              
              
                2
              
              
                ,
              
               Taobao
              
                =
              
              
                3
              
              
                )
              
              
                print
              
              
                (
              
              dict1
              
                )
              
              
                print
              
              
                (
              
              dict2
              
                )
              
              
                print
              
              
                (
              
              dict3
              
                )
              
            
          

{‘name’: ‘runoob’, ‘code’: 1, ‘site’: ‘www.runoob.com’}
{‘Google’: 2, ‘Runoob’: 1, ‘Taobao’: 3}
{‘Google’: 2, ‘Runoob’: 1, ‘Taobao’: 3}

END 小技巧

  • 使用type() isinstance()查看数据类型
            
              a 
              
                =
              
              
                13
              
              
b 
              
                =
              
              
                'ASDS'
              
              
                print
              
              
                (
              
              
                type
              
              
                (
              
              a
              
                )
              
              
                ,
              
              
                type
              
              
                (
              
              b
              
                )
              
              
                )
              
            
          

            
              
                isinstance
              
              
                (
              
              
                111
              
              
                ,
              
              
                int
              
              
                )
              
            
          

True


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论