03-基本数据类型

3 基本数据类型

课程内容

第一部分 表达式、语句、程序、函数的定义

定义

一、表达式

  • 定义:表达式是由数字、算符、数字分组符号(括号)、⾃由变量和约束变量等以能求得数值的有意义排列⽅法所得的组合。
  • 表达式特点:
      1. 表达式⼀般仅仅⽤于计算⼀些结果,不会对程序产⽣实质性的影响
      1. 如果在交互模式中输⼊⼀个表达式,解释器会⾃动将表达式的结果输出
      1. 自己的理解:表达式是求出结果的一些步骤,本身不产生结果,比如 2+3,这是表达式,但是具体是让你求出2+3=5,还是2+3是不是<5,表达式并没有说明。所以,第1点中应该是用于输出结果的一些步骤。

二、 语句

  • 定义:⼀个语法上⾃成体系的单位,它由⼀个词或句法上有关连的⼀组词构成
  • 语句的执⾏⼀般会对程序产⽣⼀定的影响,在交互模式中不⼀定会输出语句的执⾏结果
  • pass语句、代码块等

三、程序(program)

  • 定义: 就是由⼀条⼀条的语句和⼀条⼀条的表达式构成的。

四、函数(function)

  • 定义
    • 1. 内置函数 : 或者内建函数,就是由语法规定存在的函数,这些函数,包含 在编译器的运⾏时库中,程序员不用单独书写代码实现它,只需要调⽤既可。
    • 2. ⾃定义函数 : 由程序员⾃主的创建的函数 当我们需要完成某个功能 时,就可以去调⽤内置函数,或者⾃定义函数
  • 函数的2个要素
    • 参数
    • 返回值

第二部分 标识符

2.1 关键字
  • python⼀些具有特殊功能的标识符,这就是所谓的关键字关键字,是python 已经使⽤的了,所以不允许开发者⾃⼰定义和关键字相同的名字的标识符
import keysword  
keyword.kwlist  
['False','None', 'True','and','as', 'assert','break',
 'class','continue', 'def','del','elif', 'else','except',
'finally', 'for', 'from','global','if','import','in','is',
'lambda', 'nonlocal','not','or','pass','raise', 'return',
'try','while','with','yield']
2.2 标识符概念
  • 开发⼈员在程序中⾃定义的⼀些符号和名称。标识符是⾃⼰定义的,如变量名、函数名等
  • 组成:由26个英⽂字⺟⼤⼩写,数字 0-9 符号 _$ 标识符的规则:
    • 1.标识符中可以包含字⺟、数字、_,但是不能使⽤数字开头 例如: name1 name_1 _name1 1name(不⾏)
    • 2.Python中不能使⽤关键字和保留字来作为标识符
  • 命名⽅式 驼峰命名法
    • ⼩驼峰式命名法: 第⼀个单词以⼩写字⺟开始;第⼆个单词的⾸字⺟⼤ 写,例如:myName、aDog
    • ⼤驼峰式命名法: 每⼀个单字的⾸字⺟都采⽤⼤写字⺟,例如: FirstName、LastName 下划线命名法 不过在程序员中还有⼀种命名法⽐较流⾏,就是⽤下划线“_”来连接所有 的单词,⽐如 get_url buffer_size

第三部分 基本数据类型

定义:数据类型指的就是变量的值的类型,也就是可以为变量赋哪些值
3.1 整数和⼩数
  • 整数 : 所有整数 例如 : a = 1 b = 100 c =999 都是int类型
  • ⼩数常量 : 所有⼩数 例如 a = 1.2 b=6.66 ⽤float类型表示
3.2 布尔值和空值
  • 布尔: 只有2个值⼀个是True ⼀个是False
  • None常量:只有⼀个数值就是None 也就是空值

第四部分 变量

4.1 变量的概念?
  • 变量是计算机内存中的⼀块区域,存储规定范围内的值,值 可以改变,通俗 的说变量就是给数据起个名字。
变量命名规则
  • 变量名由字⺟、数字、下划线组成要符合标识符的命名规范
  • 数字不能开头
  • 不能使⽤关键字
注意 : 是两个对象相等和两个对象是同⼀个对象是两个概念
 import copy
 s1 = {'Jerry':'Python'} 
 s2 = copy.deepcopy(s1) 
 print(s2) # {'Jerry': 'Python'} 
 print(id(s1),id(s2))
 print(s1==s2)
4.2 变量的运算
  • 变量的运算就是正常的四则运算 ,需要注意的是在运算过程中含有浮点数,那 么它返回的就是⼀个浮点数类型

第五部分 字符串

5.1 什么是字符串

  • 定义:字符串是由数字、字⺟、下划线组成的⼀串字符
注意
  • 单引号和双引号不能混合使⽤
  • Python中⽤⼀对双引号或者⼀对单引号包裹的内容就是字符串

5.2 转义字符

  • 定义:转义字符是⼀种特殊的字符常量。转义字符以反斜线""开头,后跟⼀个或⼏个 字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符
  • 总结
    • \t 表示制表符
    • \n 表示换⾏符
    • \ \ 表示反斜杠
    • \ ’ 表示 ’
    • \ \ ‘’ 表示 ‘’

5.3 ⻓字符串

  • ⻓字符串 ⼜叫做⽂档字符串 我们使⽤三重引号来表示⼀个⻓字符串’’’ ‘’’ 三重引号可以换⾏,并且会保留字符串中的格式

5.4 格式化字符串

  • 第⼀种格式化字符串 拼串
    a = 'python'
    print('a = ' + a)
    
    # a = python
    
  • 第⼆种格式化字符串 参数传递
    a = 'python'
    print('a = ' , a)
    
    # a = python
    
  • 第三种格式化字符串 占位符 %s 字符串占位 %f 浮点数占位 %d 整数占位
    s = 's = %s '%'hello'
    print(s)
    
    # s = hello 
    
    s = 's = %s z = %s '%('hello','python')
    print(s)
    
    # s = hello z = python 
    
  • 第四种格式化字符串 f’{变量}’/ str.format
    s1 = '金刚'
    s2 = '葫芦娃'
    s = f'厉害啊,{s1}{s2}'
    print(s)
    
    # 厉害啊,金刚,葫芦娃
    
    s1 = '金刚'
    s2 = '葫芦娃'
    s = '牛X啊,{}{}'.format(s1,s2)
    print(s)
    
    # 牛X啊,金刚葫芦娃
    
    s = 'I love {}'
    a = s.format('python')
    print(a)
    
    # I love python
    

5.5 字符串的其他操作

  • len() 字符串的⻓度 返回字符串、列表、字典、元组等长度
    s = 'a b'
    print(len(s))	# 3  空格也算个字符
    
    s = ['a','b']
    print(len(s))	# 2
    
    s = {'name':'xiaohong','age':25}
    print(len(s))	#2
    
    s = ('a','b','c')
    print(len(s))	#3
    
  • max() 最⼤值
  • min() 最⼩值
  • split()分割字符串
    • Python中有split()和os.path.split()两个函数,具体作用如下:
      • split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
        • 语法:str.split(str="",num=string.count(str))[n]
        • 参数说明:

          • str:表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素

          • num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量

          • [n] 表示选取第n个分片

          • 注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略

      str = 'https://fanyi.baidu.com.cn/'
      
      # 1. 以'.'为分隔符
      print(str.split('.'))
      
      # 2. 分割两次
      print(str.split('.',2))
      
      # 3. 分割两次,并取序列为1的项
      print(str.split('.',2)[2])
      
      # 4. 分割两次,并把分割后的三个部分保存到三个文件
      u1, u2, u3 =str.split('.',2)
      print(u1,u2,u3)
      
       # ['https://fanyi', 'baidu', 'com', 'cn/']
       #  ['https://fanyi', 'baidu', 'com.cn/']
       #  com.cn/
       # https://fanyi baidu com.cn/``  - ##### os.path.split():按照路径将文件名和路径分割开
      
      
  • 语法:os.path.split(‘PATH’)

    • 参数说明:

    • 1.PATH指一个文件的全路径作为参数:

    • 2.如果给出的是一个目录和文件名,则输出路径和文件名

    • 3.如果给出的是一个目录名,则输出路径和为空文件名

             import os
             print(os.path.split('F:\anaconda\etc'))
             print(os.path.split('F:\anaconda\etc\jupyter\jupyter_nbconvert_config.json'))
             # ('F:\x07naconda', 'etc')
             # ('F:\x07naconda\\etc\\jupyter', 'jupyter_nbconvert_config.json')
      
    
    
     str="hello boy<[www.baidu.com]>byebye"
     str1 = str.split('[')[1]
   	 print(str1)
   	 str2 = str1.split(']')
   	 print(str2)
   	 print(str2[0])

   	 # www.baidu.com]>byebye
   	 # ['www.baidu.com', '>byebye']
   	 # www.baidu.com
  • join()拼接字符串

    • python中的join()函数的用法
    函数:string.join()
    • Python中有join()和os.path.join()两个函数,具体作用如下:
      • join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
        • 语法: ‘sep’.join(seq)
        • 参数说明
        • sep:分隔符。可以为空
        • seq:要连接的元素序列、字符串、元组、字典
        • 上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串
        • 返回值:返回一个以分隔符sep连接各个元素后生成的字符串
      str = ['www','baidu','com','cn']
      print (' '.join(str))
      s = '.'.join(str)
      print(s)
      
      # www baidu com cn
      # www.baidu.com.cn
      
      
      • os.path.join(): 将多个路径组合后返回
        • 语法: os.path.join(path1[,path2[,…]])
        • 返回值:将多个路径组合后返回
        • 注:第一个绝对路径之前的参数将被忽略

    import os
    os.path.join('/hello/','good/boy/','doiido')
    
    # '/hello/good/boy/doiido'
    
  • strip() 函数 去空格
    • 语法:string.strip(s[, chars])
    • 它返回的是字符串的副本,并删除前导和后缀字符。(意思就是你想去掉字符串里面的哪些字符,那么你就把这些字符当参数传入。此函数只会删除头和尾的字符,中间的不会删除。)如果strip()的参数为空,那么会默认删除字符串头和尾的空白字符(包括\n,\r,\t这些)

    str = '    hello   '
    print(str)
    print(str.strip())
    
    #    hello   
    # hello
    
    a=" \rzha ng\n\t "
    print(len(a))
    
    b=a.strip()
    print(b)
    print(len(b))
    
    # 11
    # zha ng
    # 6
    
    a="aabcacb1111acbba"
    print(a.strip("abc"))
    print(a.strip("acb"))
    print(a.strip("bac"))
    print(a.strip("bca"))
    print(a.strip("cab"))
    print(a.strip("cba"))
    
    #输出:
    1111
    1111
    1111
    1111
    1111
    1111
    
    • lstrip() 去左边空格
    • rstrip() 去右边空格
    a="babacb111baccbb"
    print(a.lstrip("abc"))
    print(a.rstrip("abc"))
    
    # 输出:
    # 111baccbb
    # babacb111
    
  • 字符串⼤⼩写等 upper() 、lower()、capitalize()、title()
    • upper() 全部⼤写
    s = 'hello'
    print(s.upper())
    # HELLO
    
    • lower() 全部小写
    s = 'HELlo'
    print(s.lower())
    # hello
    
    • capitalize() 字符串中字母首字母大写其余小写
    s = 'hello world'
    print(s.capitalize())
    # Hello world
    
    • title()
    s = 'hello world'
    print(s.title())
    # Hello World
    
    • isupper() 判断是不是⼤写 全部大写才为True,否则False
    • s.islower() 判断是不是⼩写 全部小写才为True,否则False
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值