zoukankan      html  css  js  c++  java
  • Python 数据类型

    Python3 有六个标准的数据类型:

    • Number(数字)

    • String(字符串)

    • List(列表)

    • Tuple(元组)

    • Set(集合)

    • Dictionary(字典)

    数字(Number)、字符串(String)、元组(Tuple)是不可变的数据类型,列表(List)、集合(Set)、字典(Dictionary)是可变的。

    不可变指的是值本身不可变,但变量是可变的。比如:

    1 a="hello wolrd"
    2 a=10
    3 print(a)  #10

     “hello world”这个字符串本身是不可变的,我们不能修改这个字符串本身,但我们可以修改指向这个字符串的变量。

    python中没有数组这一数据类型,但可以使用列表、元组代替数组。

    查看数据类型

    1、可用type()查看值、变量的数据类型:

    a=1
    print(type(a))   # <class 'int'>
    print(type(1))   #可直接使用值

    2、可用isinstance()判断变量类型:

    1 a=1
    2 b=isinstance(a, int)  #返回值是bool类型
    3 print(b)  #True
    4 
    5 b=isinstance(1,int)   #第一个参数也可以使用具体的值

    3、如果不再使用某些变量,可用del删除变量

    1 a=1
    2 del a  #删除变量
    3 print(a)  #报错
    4 
    5 
    6 a,b=1,"hello"
    7 del  a,b   #可同时删除多个变量,逗号分隔

    数字(Number)

    Python3 支持4种数字: int、float、bool、complex(复数)

    1 a,b,c,d=1,1.2,True,4+3j
    2 print(c+1)   #2

    bool型有两个值:True、False,首字母要大写。参与算数运算时,True代表1,False代表0。

    需要注意的算数运算符:

    1 print(6/4)  #除法,结果是浮点型
    2 print(4/4)   #1.0
    3 
    4 print(6//4)  #整除,只保留整数部分,1
    5 
    6 print(2**3)  #乘方,2的3次方(幂),8

     强制类型转换:

     1 a,b=1,2.3
     2 float(a)  #将a强制转换为float型,并返回转换后得到的值1.0
     3 int(b)  #将b强制转换为int型,并返回转换后得到的值2
     4 print(a)  #1
     5 print(b)  #2.3
     6 
     7 """
     8 注意,变量的值并没有发生改变
     9 a=1.2
    10 int(a)   返回转换后得到的值1,a的值仍是1.2,没有变
    11 print(int(a))   1
    12 """

    构造复数:

    • complex(x)    //返回复数x+0j,x为实部,虚部为0
    • complex(x,y)    //返回复数x+yj

    x,y本身的值并不改变。

    字符串(String)

    1、定义

     1 a="hello"  #可使用双引定界
     2 b=' world!'  #也可以使用单引定界
     3 c="""hello   #多行字符串可使用三个单引或三个双引定界,类似html中的<pre>标签,会保留格式。
     4 world!"""     
     5 
     6 
     7 d=""ok""   #特殊字符要使用转义
     8 print(d)
     9 
    10 print(r"
    ")  #可在字符串前面加一个r或R,表示原始字符串,这样就不会解析表示的特殊字符。此句代码原样输出
    
    11 
    12 print(a+b)  # +号是字符串连接符
    13 print(1+a)  #数字和字符串不能相加,会报错

    2、字符串索引、截取

     1 a="hello"  #可使用双引定界
     2 
     3 print(a)   #整个字符串
     4 
     5 print(a[0])  #某个字符,下表索引,可使用负数。0表示左起第一个,-1表示右起第一个。h
     6 print(a[-1])  #o
     7 
     8 print(a[0:3])  #截取字符串。hel,截取范围是[start,end),和java一样,包含start,不包含end
     9 print(a[1:])  #可缺省start或end,缺省时默认start为0,end为-1
    10 print(a[:3])  #

    3、字符串的成倍增加

    1 a="hello"*3   #字符串可与数字相乘。3个hello连接在一起。
    2 print(a)  #hellohellohello
    3 
    4 print("*"*50)    #分隔线效果

    4、字符串的成员判断

    1 print("H" in "hello")  #False
    2 print("H" not in "hello")  #True

    返回值是bool型。

    5、 字符串的格式化输出

    1 print("我是%s,我今年%d岁"%("小明",20))  #我是小明,我今年20岁

     "字符串格式"%(值1,值2,....)

    如果只有一个值,可缺省%后面的()。

    格式与C语言中的相同。

        符   号描述
          %c  字符
          %s  字符串
          %d  整数
          %u  无符号整型
          %o  无符号八进制数
          %x  无符号十六进制数,x可大写
          %f  浮点数,可指定小数点后的精度
          %e  用科学计数法格式化浮点数,e可大写

    格式化操作辅助指令:

    符号功能
    * 定义宽度或者小数点精度
    - 用做左对齐
    + 在正数前面显示加号( + )
    <sp> 在正数前面显示空格
    0 显示的数字前面填充'0'而不是默认的空格
    % '%%'输出一个单一的'%'
    m.n m 是显示的最小总宽度,n 是小数点后的位数

    若格式不匹配,会自动转换为对应的格式输出:

    1 a=1.2323
    2 print("%d"%(a))  #1
  • 相关阅读:
    2020-11-15(第十一周)助教周小结
    2020-11-08(第十周)助教周小结
    2020-11-01助教周小结(第九周)
    Template.
    OO第四单元总结
    OO第三单元总结
    OO第二单元总结
    OO第一单元总结
    AFO
    Codeforces Round #424 (Div. 2)
  • 原文地址:https://www.cnblogs.com/chy18883701161/p/11284862.html
Copyright © 2011-2022 走看看