• python基础二


    一、为什么要有数据类类型?

    1. 什么是数据?

       x = 10 , 10 就是我们要存储的数据,数据是对信息的描述

    2. 为什么要有数据类型?

     对于人类来说,看到一个数字,大脑就知道是数值类型,看到一串文字,就知道就是字符串类型。

    但计算机不知道,因引需要定义数据类型,明确地告知计算机,各种数据类型的规则 :

       比始:用引号引起来的,就是字符串类型; 有小数点的数字,就是浮点类型

    3. 数据类型

      数字         int:用于计数、计算、运算等。1,3 ,5,100.......

      字符串     str: 用于少量数据的存储,便于操作

      布尔        bool: True,False, 两种状态,机器反馈给用户的对,错

      列表        list: [  'alex',123,('123',456),[ 'aa','bb' ]..... ] 大量的数据,各种数据类型,便于操作

      元组       tuple: (1,'chris','name','sex')   只读列表

      字典       dict: {'name':'chris','sex':'male','age':16,'job':'engineer'}   大量的关联数据

      集合       set: {‘a','b',...} 关系测试。  集合也是花括号,但是存储的不是键值对。

    二、数据类型之间的转化

    int ----> str   str(int)

    str ----> int  in(str) :前提条件,字符串中的字符都是数字,可以用str.isdigit()判断 

    int ---> bool 非零即True,零即False

    bool ---> int      True即1, False即为0

    str ---> bool 非空字符串即True,空字符串即False

    bool ---> str  'True'  'False'

    name = input("请输入大名")

    if name:

      print(666)

    else:

      print("无内容")

     三、字符串操作

    capitalize() : 使字符串首字母大写,其余字母小写

    print("78abDefE89".capitalize())  # 输出结果: 78abdefe89
    print("r78abDefE89".capitalize())  # 输出结果: R78abdefe89

    strip()

    s = input("请输入你想输入的字符串").strip()
    # 养成输入加strip()方法习惯,

     format() 的三种玩法,格式化输出

    name = input("input your name:").strip()
    age = input("iput your age: ").strip()
    gender = input("input your gender:")
    print('我叫{},今年我{}岁了,我的性别是{}。'.format(name,age,gender))   # 必段一一对应
    print('我叫{0},今年我{2}岁了,我的性别是{1},我还是叫{0}。'.format(name,gender,age))   # 按照索引来取值
    print('我叫{name},今年我{age}岁了,我的性别是{gender},我还是叫{name}。'.format(name=name,gender=gender,age=age))   # 按照关键字来取值
    
    输出结果如下:
    input your name:chris
    iput your age: 18
    input your gender:male
    我叫chris,今年我18岁了,我的性别是male。
    我叫chris,今年我18岁了,我的性别是male,我还是叫chris。
    我叫chris,今年我18岁了,我的性别是male,我还是叫chris。
    
    Process finished with exit code 0

    int <---> bool :
    非0 True 0 False
    True 1 False 0
    int <---> str
    str(123)
    int('123') :字符串必须全部是数字组成
    bool<---> str
    非空 True 空字符串 False
    str(True)
    s1 = 'alexsb'
    1.索引
    s1[0]
    2.切片 顾头不顾腚
    s1[:4]
    s1[:]
    3.切片+步长
    s1[::2]
    s1[100:] ?

    操作方法:
    upper lower 变大写,变小写 验证码
    strip:默认去除去除首位的空格,换行符,制表符
    strip(元素)
    lstrip()
    rstrip()
    startswith endswith 判断以...开头,结尾
    find 通过元素找索引,找不到返回-1
    index 通过元素找索引,找不到报错
    replace 替换 (old,new,次数)
    format
    :'{}{}{}'.format('alex','man',1000)
    :'{0}{1}{2}'.format('alex','man',1000)
    :'{name}{age}{sex}'.format(name='alex',sex='man',age=1000)
    count:查询次数
    join:
    '_'.join(interable)
    split:
    'alex wusir'.split() ---> ['alex','wusir']
    可以指定分隔符。
    可以指定分割次数。
    ' alex wusir'.split('') ---> ['','alex','wusir']
    title: 每个非字母隔开的内容的首字母大写
    len(): 统计字符串的字符的个数
    isdigit(): 判断字符串是否全部有数字组成
    isalpha():全部由字母组成
    isalnum(): 全部由字母或数字组成。
    swapcase():大小写反转
    center():居中可设置填充物。
    capitalize() 首字母大写,其余的变成小写。

    for  循环

    slogan = 'abcdef'# 输出asb,bsb,csb,...fsb
    is_first = True  # 设置第一次进入循环标志位
    msg = ''
    for item  in slogan:
        if is_first:
            msg += item
            is_first = False
        else:
            msg += 'sb
    ' + item
    print(msg + "sb")
    
    输出结果:
    C:Python36python.exe C:/Users/jiayong/PycharmProjects/knight_schema/day04/01.py
    asb
    bsb
    csb
    dsb
    esb
    fsb
    
    Process finished with exit code 0
    '''
    列表,按照索引取元素的话,元素什么类型,返回的值就是什么类型;
    列表,按照切片取元素的话,返回的还是列表
    '''
    list1 = ["chris",123,"smuice",[1,3,"cc"]]
    print(list1[0],type(list1[0]))   # 输出结果:chris <class 'str'>
    print(list1[-1],type(list1[-1]))   #输出结果: [1, 3, 'cc'] <class 'list'>
    print(list1[0:1],type(list1[0:1]))  # 输出结果:['chris'] <class 'list'>
  • 相关阅读:
    vim编辑器下nginx.conf语法高亮
    Spring Boot 警告:An illegal reflective access operation has occurred
    Idea使用 MyBatis Generator 插件快速生成代码
    SpringBoot 自定义线程池处理异步任务
    idea 处理mybatis的mapper.xml警告提示信息让其不显示
    mybatis 报文档根元素 "mapper" 必须匹配 DOCTYPE 根 "null"
    zookeeper生成分布式自增ID
    Navicat卸载注册表 激活码
    mybatis自定义TypeHandler实现list转string
    Java创建ES索引实现
  • 原文地址:https://www.cnblogs.com/chris-jia/p/9431639.html
Copyright © 2020-2023  润新知