• 最新消息:

    Python – 变量类型

    python 胡马 41浏览 0评论

    变量只是用于存储值的保留内存位置。这意味着当您创建变量?#20445;?#24744;在内存中保留了一些空间。

    根据变量的数据类型,解释器分配内存并决定可以存储在保留内存中的内容。因此,通过为变量分配不同的数据类型,可以在这些变量中存储整数,小数或字符。

    将值分配给变量

    Python变量不需要显式声明来保留内存空间。为变量赋值?#20445;?#22768;明会自动发生。等号(=)用于为变量赋值。

    =运算符左侧的操作数是变量的名称,=运算符右侧的操作数是存储在变量中的值。例如

    #!/usr/bin/python
    
    counter = 100          # An integer assignment
    miles   = 1000.0       # A floating point
    name    = "John"       # A string
    
    print counter
    print miles
    print name
    

    这里,100,1000.0和“John”分别是分配给计数器里程名称变量的值。这产生以下结果 –

    100
    1000.0
    John
    

    多次分配

    Python允许您同时为多个变量分配单个值。例如 –

    a = b = c = 1
    

    这里,使用值1创建整数对象,并将所有三个变量分配给相同的内存位置。您还可以将多个对象分配给多个变量。例如 –

    a,b,c = 1,2,"john"
    

    这里,两个值为1和2的整数对象分别分配给变量a和b,一个值为“john”的字符串对象分配给变量c。

    标准数据类型

    存储在存储器中的数据可以是多种类型。例如,一个人的年龄存储为数字值,他或她的地址存储为字母数字字符。Python有各种标准数据类型,用于定义它们可能的操作以及每个类型的存储方法。

    Python有五种标准数据类型 –

    • 数字
    • 名单
    • 元组
    • ?#20540;?/li>

    Python数字

    数字数据类型存储数值。为其分配值时会创建数字对象。例如 –

    var1 = 1
    var2 = 10
    

    您还可以使用del语句?#22659;?#23545;数字对象的引用。del语句的语法是 –

    del var1[,var2[,var3[....,varN]]]]
    

    您可以使用del语句?#22659;?#21333;个对象或多个对象。例如 –

    del var
    del var_a, var_b
    

    Python支持四种不同的数字类型 –

    • int(有符号整数)
    • long(长整数,它们?#37096;?#20197;用八进制和十六进制表示)
    • float(浮点实数值)
    • 复杂的(复数)

    例子

    以下是一些数字示例 –

    INT浮动复杂
    1051924361L0.03.14j
    100-0x19323L15.2045.j
    -7860122L-21.99.322e-36J
    0800xDEFABCECBDAECBFBAEl32.3 + E18.876j
    -0490535633629843L-90。-.6545 + 0J
    -0x260-052318172735L-32.54e1003E + 26J
    0×69-4721885298529L70.2-E124.53e-7J
    • Python允许你使用带有long的小写l,但是建议你只使用大写的L来避免与数字1混淆.Python使用大写的L显?#22659;?#25972;数。
    • 复数由一对有序的实数浮点数组成,用x + yj表示,其中x和y是实数,j是虚数。

    Python字符串

    Python中的字符串被标识为引号中表示的连续字符集。Python允许使用单引号或双引号。可以使用切片运算符([]和[:])获取字符串子集,索引从字符串开头的0开始,并从最后的-1开始。

    加号(+)是字符串连接运算符,星号(*)是重复运算符。例如

    #!/usr/bin/python
    
    str = 'Hello World!'
    
    print str          # Prints complete string
    print str[0]       # Prints first character of the string
    print str[2:5]     # Prints characters starting from 3rd to 5th
    print str[2:]      # Prints string starting from 3rd character
    print str * 2      # Prints string two times
    print str + "TEST" # Prints concatenated string
    

    这将产生以下结果 –

    Hello World!
    H
    llo
    llo World!
    Hello World!Hello World!
    Hello World!TEST
    

    Python列表

    列表是Python中最通用的复合数据类型。列表包含以逗号分隔的项目,并用方括号([])括起来。在某种程度上,列表类似于C中的数组。它们之间的一个区别是属于列表的所有项可以是不同的数据类型。

    存储在列表中的值可以使用切片运算符([]和[:])进行访问,索引从列表开头的0开始,然后一直运行到结束-1。加号(+)是列表连接运算符,星号(*)是重复运算符。例如

    #!/usr/bin/python
    
    list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
    tinylist = [123, 'john']
    
    print list          # Prints complete list
    print list[0]       # Prints first element of the list
    print list[1:3]     # Prints elements starting from 2nd till 3rd 
    print list[2:]      # Prints elements starting from 3rd element
    print tinylist * 2  # Prints list two times
    print list + tinylist # Prints concatenated lists
    

    这产生以下结果 –

    ['abcd', 786, 2.23, 'john', 70.2]
    abcd
    [786, 2.23]
    [2.23, 'john', 70.2]
    [123, 'john', 123, 'john']
    ['abcd', 786, 2.23, 'john', 70.2, 123, 'john']
    

    Python元组

    元组是另一种类似于列表的序列数据类型。元组由许多以逗号分隔的值组成。但是,与列表不同,元组括在括号内。

    列表和元组之间的主要区别在于:列表括在括号([])中,它们的元素和大小可以更改,而元组括在括号(()中)并且无法更新。元组可以被认为是只读列表。例如

    #!/usr/bin/python
    
    tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
    tinytuple = (123, 'john')
    
    print tuple           # Prints complete list
    print tuple[0]        # Prints first element of the list
    print tuple[1:3]      # Prints elements starting from 2nd till 3rd 
    print tuple[2:]       # Prints elements starting from 3rd element
    print tinytuple * 2   # Prints list two times
    print tuple + tinytuple # Prints concatenated lists
    

    这产生以下结果 –

    ('abcd', 786, 2.23, 'john', 70.2)
    abcd
    (786, 2.23)
    (2.23, 'john', 70.2)
    (123, 'john', 123, 'john')
    ('abcd', 786, 2.23, 'john', 70.2, 123, 'john')
    

    以下代码对元组无效,因为我们尝试更新元组,这是不允许的。列表可能有类似的情况 –

    #!/usr/bin/python
    
    tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
    list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
    tuple[2] = 1000    # Invalid syntax with tuple
    list[2] = 1000     # Valid syntax with list
    

    Python?#20540;?/h2>

    Python的?#20540;?#26159;一种哈希表类型。它们像在Perl中找到的关联数组或散列一样工作,并由键值对组成。?#20540;?#38190;几乎可以是任何Python类型,但通常是数?#21482;?#23383;符串。另?#29615;?#38754;,值可以是任意Python对象。

    ?#20540;?#29992;大括号({})括起来,可以使用方括号([])分配和访问值。例如

    #!/usr/bin/python
    
    dict = {}
    dict['one'] = "This is one"
    dict[2]     = "This is two"
    
    tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
    
    
    print dict['one']       # Prints value for 'one' key
    print dict[2]           # Prints value for 2 key
    print tinydict          # Prints complete dictionary
    print tinydict.keys()   # Prints all the keys
    print tinydict.values() # Prints all the values
    

    这产生以下结果 –

    This is one
    This is two
    {'dept': 'sales', 'code': 6734, 'name': 'john'}
    ['dept', 'code', 'name']
    ['sales', 6734, 'john']
    

    ?#20540;?#22312;元素之间没有顺序概念。说元素是“乱序”是不正确的; 它们只是无序的。

    数据类型转换

    有?#20445;?#24744;可能需要在内置类型之间执行转换。要在类型之间进行转换,只需使用类型名称作为函数。

    有几个内置函数可以执?#20889;?#19968;种数据类型到另一种数据类型的转换。这些函数返回表示转换值的新对象。

    Sr.No.功能说明
    1int(x [,base])将x转换为整数。base指定x是字符串的基数。
    2long(x [,base])将x转换为长整数。base指定x是字符串的基数。
    3浮动(x)的将x转换为浮点数。
    4复杂的(真实[,想象])创建一个复数。
    STR(x)的将对象x转换为字符串表示形式。
    6再版(x)的将对象x转换为表达式字符串。
    7的eval(STR)计算字符串并返回一个对象。
    8元组(S)将s转换为元组。
    9列表(S)将s转换为列表。
    10集(S)将s转换为集合。
    11?#20540;洌╠)创建一个?#20540;洹必须是(键,值)元组的序?#23567;?/td>
    12frozenset(S)将s转换为冻结集。
    13CHR(x)的将整数转换为字符。
    14unichr(x)的将整数转换为Unicode字符。
    15ORD(x)的将单个字符转换为其整数值。
    16十六进制(x)的将整数转换为十六进制字符串。
    17辛(x)的将整数转换为八进制字符串。

    转载请注明:胡马部落 » Python – 变量类型

    发表我的评论
    取消评论
    表情

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址
    内蒙古11选5开奖结果