第三章 Python的基本数据类型

第三章 python的基础数据类型

注:本博客为 《python 王者归来》学习笔记,如有版权问题请通知删除

3-1 type() 函数

  • 这个函数可以列出变量的数据类型类别
x = 10
y = x / 3
print(x)
print(type(x))
print(y)
print(type(y))
#输出结果
10
<class 'int'>
3.3333333333333335
<class 'float'>

3-2 数值数据类型

  • python 在定义变量时可以不用设定这个变量的数据类型,未来如果这个变量内容是整数,这个变量就是整数(int)数据类型,如果这个变量内容是浮点数,这个变量就是浮点数(float)数据类型。整数与浮点数最大的区别是,整数不含小数点,浮点数含小数点

    x = 10.0
    print(x)
    print(type(x))
    #输出结果
    10.0
    <class 'float'>
    
3-2-1 整数与浮点数的运算
  • python 程序设计时不同数据类型也可以执行运算,程序设计时常会发生整数与浮点数之间的数据运算,python具有简单自动转换能力,在计算时会将整数转换为浮点数再执行运算。
x = 10
y = x + 5.5
print(x)
print(type(x))
print(y)
print(type(y))
#输出结果
10
<class 'int'>
15.5
<class 'float'>
3-2-2 2进位整数与函数 bin()
  • 我们可以用2进位方式代表整数,python中定义凡是0b开头的数字,代表这是2进位的整数。bin()函数可以将一般数字转换为2进位。

    x = 0b1101
    print(x)
    y = 13
    print(bin(y))
    #输出结果
    13
    0b1101
    
3-2-3 8进位整数
  • 我们可以用8进位方式代表整数,python中定义凡是0o(数字-字母)开头的数字,代表这是8进位的整数,oct() 函数可以将一般数字转换为 8 进位。

    x = 0o57
    print(x)
    y = 47
    print(oct(y))
    #输出结果
    47
    0o57
    
3-2-4 16进位整数
  • 我们可以用16进位方式代表整数,python中定义凡是0x开头的数字,代表这是16进位的整数,hex() 函数可以将一般数字转换为 16 进位

    x = 0x5D
    print(x)
    y = 93
    print(hex(y))
    #输出结果
    93
    0x5d
    
3-2-5 强制数据类型的转换
  • 有时候我们设计程序时,可以自行强制使用下列函数,转换变量的数据类型。

    • int() :将数据类型强制转换为整数

      x = 10.5
      print(x)
      print(type(x))
      y = int(x) + 5
      print(y)
      print(type(y))
      #输出结果
      10.5
      <class 'float'>
      15
      <class 'int'>
      
    • float():将数据类型强制转换为浮点数

      x = 10
      print(x)
      print(type(x))
      y = float(x) + 10
      print(y)
      print(type(y))
      #输出结果
      10
      <class 'int'>
      20.0
      <class 'float'>
      
3-2-6 数值运算常用的函数
  • 下列是数值运算常用的函数

    • abs():计算绝对值。

      x = -10
      print(abs(x))
      #输出结果
      10
      
    • pow(x,y):返回 x 的 y 次方。

      x = 5
      y = 3
      print(pow(x,y))
      #输出结果
      125
      
    • round():返回五舍六入,留意不是四舍五入

      x = 48.5
      print(round(x))
      x = 48.6
      print(round(x))
      #输出结果
      48
      49
      

3-3 布尔值数据类型

  • python 的布尔值(Boolean)数据类型的值有两种,True(真)或 False(伪),它的数据类型代号是 bool。这个布尔值一般是应用在程序流程的控制,特别是在条件表达式中,程序可以根据这个布尔值判断应该如何执行工作。

    x = True
    print(x)
    print(type(x))
    y = False
    print(y)
    print(type(y))
    #输出结果
    True
    <class 'bool'>
    False
    <class 'bool'>
    
  • 如果将布尔值数据类型强制转换成整数,当原值是 True,将得到1;当原值是 False,将得到0。

    x = True
    print(int(x))
    print(type(x))
    y = False
    print(int(y))
    print(type(y))
    #输出结果
    1
    <class 'bool'>
    0
    <class 'bool'>
    

3-4 字符串数据类型

  • 所谓的字符串(string)数据是指两个单引号(’ ')之间或是两个双引号(“ ”)之间任意个数字元符号的数据,它的数据类型代号是 str 。在英文字符串的使用中常会发生某字中间有单引号,其实这是文字的一部分,

    • 如下错误的格式

      x = 'This is James's ball'
      #输出结果
      File "<ipython-input-18-9d6ce05a9d66>", line 1
          x = 'This is James's ball'
                             ^
      SyntaxError: invalid syntax0
      
3-4-1 字符串的连接
  • 数学的运算符 “ + ” ,可以执行两个字符串相加,产生新的字符串。

    num1 = 222
    num2 = 333
    num3 = num1 + num2
    print("下面是数值相加")
    print(num3)
    numstr1 = "222"
    numstr2 = "333"
    numstr3 = numstr1 + numstr2
    print("下面是由数值组成的字符串相加")
    print(numstr3)
    #输出结果
    下面是数值相加
    555
    下面是由数值组成的字符串相加
    222333
    
3-4-2 处理多于一行的字符串
  • 程序设计时如果字符串长度多于一行,可以使用三个单引号(或是三个双引号)将字符串包夹。

    str1 = '''abcdef
    1234
    ABCDEF
    '''
    print(str1)
    #输出结果
    abcdef
    1234
    ABCDEF
    
3-4-3 逸出字符
  • 在字符串使用中,如果字符串内有一些特殊字符,如单引号,双引号等,必须在此特殊字符前加上 “\” (返斜杠),才可正常使用,这种含有"\"符号的字符称逸出字符,下表Hex值是指ASCII值
逸出字符Hex值意义
\’27单引号
\"22双引号
\5C反斜杠
\a07响铃
\b08BackSpace键
\f0C换页
\n0A换行
\o八进位表示
\r0D光标移至最左位置
\x十六进位表示
\t09Tab键效果
\v0B垂直定位
#以下输出使用单引号设定的字符串,需使用 \'
str1 = 'I can\'t stop loving you.'
print(str1)

#以下输出有 \t和 \n字符
str2 = "I \tcan 't bstop \nloving you."
print(str2)
#输出结果
I can't stop loving you.
I 	can 't bstop 
loving you.
3-4-4 强制转换为字符串
  • str() 函数可以强制将数值数据转换为字符串数据
num1 = 222
num2 = 333
num3 = num1 + num2
print("这是数值相加")
print(num3)
str1 = str(num1) + str(num2)
print("强制转换为字符串后相加")
print(str1)
#输出结果
这是数值相加
555
强制转换为字符串后相加
222333
3-4-5 将字符串转换为整数
  • 在未来的程序设计中也常会发生将字符串转换为整数数据,下列将直接以实说明

    x1 = "22"
    x2 = "33"
    x3 = x1 + x2
    print(x3)
    x4 = int(x1) + int(x2)
    print(x4)
    #输出结果
    2233
    55
    
3-4-6 字符串数据的转换
  • 如果字符串含一个字符或一个文字时,我们可以使用下列执行数据的转换

    • chr(x):可以返回函数 x 值的字符,x 是 ASCII 码值

    • ord(x):可以返回函数字符参数的 Unicode 码值,如果是中也可传回 Unicode 码值。如果是英文字会,Unicode 码值与 ASCII 码值是一样的

      x1 = 97
      x2 = chr(x1)
      print(x2)
      x3 = ord(x2)
      print(x3)
      x4 = "魁"
      print(ord(x4))
      #输出结果
      a
      97
      39745
      
3-4-7 字符串与整数相乘产生字符串复制效果
  • 在 python 可以允许将字符串与整数相乘,结果是字符串将重复该整数的次数

    x1 = "A"
    x2 = x1 * 10
    print(x2)
    x3 = "ABC"
    x4 = x3 * 5
    print(x4)
    #输出结果
    AAAAAAAAAA
    ABCABCABCABCABC
    
3-4-8 聪明地使用字符串加法和换行字符\n
  • 有时设计程序时,想将字符串分行输出,可以使用字符串加法功能,在加法过程中加上换行字符 “\n” 即可产生字符串分行输出的结果。

    str1 = "洪锦魁著作"
    str2 = "HTML 王者归来"
    str3 = "python 王者归来"
    str4 = str1 + "\n" + str2 + "\n" + str3
    print(str4)
    #输出结果
    洪锦魁著作
    HTML 王者归来
    python 王者归来
    
3-4-9 字符串前加 r
  • 在使用 python 时,如果在字符串前加上 r,可以防止逸出字符被转译

    str1 = "Hello!\npython"
    print(str1)
    str2 = r"Hello!\npython"
    print(str2)
    #输出结果
    Hello!
    python
    Hello!\npython
    
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值