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

    1.编码

    1. 最早的计算机编码是ASCII. 美国人创建的. 包含了英文字母(大写字母, 小写字母). 数字, 标点等特殊字符!@#$%

    128个码位 2**7 在此基础上加了一位 2**8

    8位. 1个字节(byte)

    2. GBK 国标码 16位. 2个字节(双字节字符)

    3. unicode 万国码 32位, 4个字节

    4. utf-8: 英文 8 bit 1个字节

    欧洲文字 16bit 2个字节

    中文 24bit 3个字节

    8bit => 1 byte

    1024 byte = > 1kb

    1024 kb => 1mb

    1024mb => 1gb

    1024gb = > 1tb


    2. 基本数据类型的概述

    int 整数

    str 字符串, 存储少量的数据

    bool 布尔

    list 列表, ["大阳哥", "东阳哥", ]

    tuple 元组. 只读列表, 不能改

    dict 字典; 一对一对的存储数据. key:value {"赵阳":"大阳哥", 'jay':"周杰伦"}

    set 集合. 存储不重复的内容

    3. int, bool, str

    int 方法操作:

    bit_length() 求二进制长度

    bool: 类型转换

    1. 你想转换成什么. 就用什么把目标包裹起来

    2. 带空的是False, 不带空的True

    str

    1. str索引和切片:

    索引:起始下标是0(从左到右), (-1)从右到左

    切片: s[起始位置: 结束位置: 步长]

    特点:顾头不顾尾

    字符串转换成数字
    s = "128"
    i = int(s)
    print(type(i))
    
    ss = str(i)
    print(type(ss))
    # 综上可以得出. 你想转换成什么就用什么把目标括起来
    
    # bool类型转换成数字  True: 1  False:0
    b = False
    c = int(b)
    print(c)
    
    int转换成bool  零: False 非零: True
    a = 0
    b = bool(a)
    print(b)
    
    
    while 1:    # 1的效率比true 稍微高一点点
        print("alex是个大xx")
    
    s = ""  #  "" 空字符串表示False, 非空字符串表示:True
    if s:
        print("哈哈")
    else:
        print("呵呵")
    
    空的东西都是False, 非空的东西都是True
    
    m = None    # 空 连空气都不如. 真空, False
    if m :
        print("a")
    else:
        print("b")
    

      

    2. 字符串的常用操作: 常用方法

    字符串不可变.

    1. upper() 转换成大写

    2. strip() 去掉空格

    3. replace() 替换

    4. split() 切割

    5. format() 格式化输出

    6. startswith() 判断是否以xxx开头

    7. find() 查找. 找不到返回-1

    8. len() 内置函数. 直接使用. 不用点操作 求字符串的长度

    s = "我爱周杰伦他媳妇"
    
    print(s[0])
    print(s[1])
    print(s[2])
    print(s[3])
    print(s[4])
    
    print(s[-1])
    print(s[-2])
    print(s[-3])
    print(s[-4])
    
    通过索引获取到的内容. 还是一个字符串
    切片可以对字符串进行截取
    语法 s[起始位置: 结束位置]
     特点:顾头不顾腚
    
    s = "alex和wusir经常在一起搞基"
    s1 = s[5:10]
    print(s1)
    s2 = s[0:4] + s[5:10]
    print(s2)
    s3 = s[5:]  # 默认到结尾
    print(s3)
    
    s4 = s[:10] # 从头开始
    print(s4)
    s5 = s[:]   # 从头到尾都切出来
    print(s5)
    
    s6 = s[-2:] # 从-2 切到结尾  默认从左往右切
    print(s6)
    
    步长
    语法:s[起始位置: 结束位置: 步长]
    s = "我是梅西,我很慌"
    s1 = s[1:5:2]   # 从1开始, 到5结束, 每2个取1个
    print(s1)
    
    s2 = s[::3]
    print(s2)
    s3 = s[6:2:-1]   # - 表示反着来. 每两个取1个
    print(s3)
    
    
    s = "这个标点符号很蛋疼"
    # s1 = s[7::-2]
    # print(s1)
    
    s2 = s[-1:-6:-2]
    print(s2)
    

      

    s = "alex and wusir and taibai"
    s1 = s.capitalize()  # 首字母大写
    print(s)    # 原字符串不变
    print(s1)
    
    s = "Alex is not a Good Man. "
    
    print(s.upper())
    print(s.lower())
    
    在程序需要判断不区分大小写的时候. 肯定能用上
    
    while True:
        content = input("请喷:")
        if content.upper() == 'Q':
            break
        print("你喷了:", content)
    
    s = "taiBai HenBai feicahngBai"
    print(s.swapcase()) # 大小写转换
    
    s = "al麻花藤ex and wu sir sir se"
    print(s.title())
    
    s = "麻花藤"
    print(s.center(9, "*"))
    
    username = input("用户名:").strip()    # 去掉空格.
    password = input("密码:").strip()     # 去掉空格
    if username == 'alex' and password == '123':
        print("登录成功")
    else:
        print("登录失败")
    
    s = "*******呵a呵呵呵****************"
    print(s.strip("*"))   # strip去掉的是左右两端的内容. 中间的不管
    
    
    s = "alex wusir alex sb taibai"
    s1 = s.replace("alex", "晓雪") # 原字符串不变
    print(s1)
    # 去掉上述字符串中的所有空格
    s2 = s.replace(" ", "")
    print(s2)
    
    
    s3 = s.replace("alex", "sb", 2)
    print(s3)
    
    s = "alex_wuse_taibai_bubai"
    lst = s.split("_taibai_")    # 刀是_  切完的东西是列表. 列表装的是字符串
    print(lst)
    
    
    s = "我叫{}, 我今年{}岁了, 我喜欢{}".format("sylar", 18, "周杰伦的老婆")
    print(s)
    
    可以指定位置
    s = "我叫{1}, 我今年{0}岁了, 我喜欢{2}".format("sylar", 18, "周杰伦的老婆")
    print(s)
    
    s = "我叫{name}, 我今年{age}岁了, 我喜欢{mingxing}".format(name="sylar", mingxing="汪峰的老婆", age=18)
    print(s)
    
    你喜欢用哪个就用哪个
    
    
    s = "汪峰的老婆不爱汪峰"
    
    print(s.startswith("汪峰"))   # 判断字符串是否以xxx开头
    print(s.endswith("爱妃"))     # 判断字符串是否以xxx结尾
    print(s.count("国际章"))   # 计算xxx在字符串中出现的次数
    
    print(s.find("汪峰", 3))    # 计算xxx字符串在原字符串中出现的位置, 如果没出现返回 -1
    print(s.index("国际章"))    # index中的内容如果不存在. 直接报错
    
    s = "abc123"
    print(s.isdigit())  # 判断字符串是否由数字组成
    print(s.isalpha())  # 是否由字母组成
    print(s.isalnum())  # 是否由字母和数字组成
    
    s = "二千136万萬"
    print(s.isnumeric())    # 数字
    
    s = "你今天喝酒了么"
    i = len(s)  #  print() input() len() python的内置函数
    print(i)
    
    i = s.__len__() # 也可以求长度 len()函数执行的时候实际执行的就是它
    print(i)
    
    把字符串从头到尾进行遍历
    s = "晓雪老师.你好漂亮"
    print(len(s))   # 长度是:8 索引到7
    1. 使用while循环来进行遍历
    count = 0
    while count < len(s):
        print(s[count])
        count = count + 1
    
    2. 用for循环来遍历字符串
    优势:简单
    劣势:没有索引
    for c in s: # 把s中的每一个字符交给前面的c 循环
        print(c)
    
    语法:
        for bianliang  in  可迭代对象:
            循环体
    

      

    3. 迭代

        for 变量 in 可迭代对象:

                循环体

        else:

     

  • 相关阅读:
    C++实现高斯滤波器
    移动通信
    最简单的DLL
    C/C++ 编译和链接过程
    Servlet 详解
    对 Java 集合的巧妙利用
    Java 泛型
    Java 字符编码与解码
    HTTP 400 错误
    a 标签的四种样式
  • 原文地址:https://www.cnblogs.com/duanpengpeng/p/9263936.html
Copyright © 2011-2022 走看看