zoukankan      html  css  js  c++  java
  • 03 编码 int ,bool,str的常用操作 主要讲str

    主要内容:

    1 编码

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

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

           8位   1个字节(byte)

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

           3) unicode  万国码 32位  4个字节

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

                              欧洲文字   16bit      2个字节

                 中文          24bit      3个字节

      8bit=1byte    1024byte=1kb   1024kb=1mb   1024mb=1gb      1024gb=1tb

    2基本数据类型概述

      1)int :    整数

      2)str:    字符串  存储少量的数据

      3)bool:  布尔

      4)list:    列表    ["大秧歌","东阳"]

      5)tuple:元祖    只读列表,不能修改

      6)dict:  字典    一对一对的存储数据.key:value{"jj":"林俊杰","jay":"周杰伦"}

      7)set:   集合    存储不重复的内容

    3  int操作

      bit_length():       求二进制长度

    a=3                               二进制1
    print(a.bit_length())             ###结果是2

    4 bool操作

      类型转换:你想转换成什么,就用什么把目标裹起来

    b=False
    c=int(b)
    print(c)                          ###结果是0

      带空的返回false,不带空的返回true

    a = 0
    b = bool(a)
    print(b)                          ###结果是false
    s = ""  #  "" 空字符串表示False, 非空字符串表示:True
    if s:
        print("哈哈")
    else:
        print("呵呵")                 ###结果是呵呵

    4 字符串的常用操作

      1)索引和切片:

        索引:通过索引获得的内容还是一个字符串

    s="吴磊很帅"
    print(s[1])
    print(s[-1])                      #### 结果是磊         帅

        切片:

        切片可以对字符串进行截取   s[起始位置:结束位置]      特点是顾头不顾尾

    s = "alex和wusir经常在一起搞基"
    s1 = s[0:5]
    s2 = s[:4]              #默认从开始到4
    s3 = s[1:]              #默认从1到结束
    s4 = s[:]               #默认从开始到结束
    s5 = s[0:4] + s[5:10]   #+表示拼接
    s6 = s[-2:]             # 从-2 切到结尾  默认从左往右切
    s7=s[6:2:-1]             #-号表示从左往右切
    s8=s[-1:-6:-2]           #
    print(s1)
    print(s2)
    print(s3)
    print(s4)
    print(s5)
    print(s6)
    print(s7)
    alex和
    alex
    lex和wusir经常在一起搞基
    alex和wusir经常在一起搞基
    alexwusir
    搞基
    uw和x

      2)字符串的常用操作:

      字符串不可以改变

      upper()转换成大写

      lower()转换成小写

    s="alex is Not a Good man"
    print(s.upper())
    print(s.lower())
    print(s)
    ALEX IS NOT A GOOD MAN
    alex is not a good man
    alex is Not a Good man

     在程序不区分大小写的时候肯定能用上

    在程序需要判断不区分大小写的时候,肯定能用上.
    while True:
        content=input("请喷:")
        if content.upper()=="Q":
            break
        print("你喷了:",content)
    请喷:邱老师和助教老师都很好
    你喷了: 邱老师和助教老师都很好
    请喷:q

      replace()替换

    s="alex wusir alex sb taibai"
    s1=s.replace("alex","小雪")
    print(s1)
    #去掉上述字符串的所有空格
    s2=s.replace("alex","sb",1)    #1指的是第一个alex  而不是索引的1
    print(s2)
    s3=s.replace(" ","")
    print(s3)
    小雪 wusir 小雪 sb taibai
    sb wusir alex sb taibai
    alexwusiralexsbtaibai

      strip()去除空格,还可以去除两边的内容(括号里面需要加上删除的内容)

    username = input("用户名:").strip()    # 去掉空格.
    password = input("密码:").strip()     # 去掉空格
    if username == 'alex' and password == '123':
        print("登录成功")
    else:
        print("登录失败")
    s="******呵呵a呵呵呵呵********"
    print(s.strip("*"))                 ####结果是呵呵a呵呵呵呵

      split()切割:切割的内容是一个列表

    s="alex_wuse_taibai_bubai"
    list=s.split("_")
    print(list)
    ['alex', 'wuse', 'taibai', 'bubai']

        可以根据相应的位置切割

    name = "alex leNB"
    s2=name.split("l",1)         #根据第一个l的位置切割
    print(s2)
    ['a', 'ex leNB']

      format()格式化输出

    s="我叫{},我今年{}岁了,我喜欢{}".format("sylar","18","周杰伦的老婆")
    print(s)

      startswith()判断以xxx开头

      endswith()判断以什么结束

      find()查找,找不到返回-1

      index()查找,找不到报错

    s = "汪峰的老婆不爱汪峰"
    print(s.startswith("汪峰"))   # 判断字符串是否以xxx开头                        True
    print(s.endswith("爱妃"))     # 判断字符串是否以xxx结尾                        Flase
    print(s.count("国际章"))   # 计算xxx在字符串中出现的次数                          0
    print(s.find("汪峰"))    # 计算xxx字符串在原字符串中出现的位置, 如果没出现返回 -1    0
    print(s.index("国际章"))    # index中的内容如果不存在. 直接报错                   报错    可以使用find, 如果找不到就返回-1                   

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

    s = "晓雪老师.你好漂亮"
    print(len(s))   # 长度是:8 索引到7
    1. 使用while循环来进行遍历
    count = 0
    while count < len(s):
        print(s[count])
        count = count + 1

      count()计数,判断字符串出现的次数,也可以从开始位置到结束位置计算出现的次数

    name = "alex leNB"
    s1 = name.count("l",0,4)    #计数还可以从开始位置到结束位置.格式name.count("",开始位置,结束位置)
    print(s1)

    5 迭代

      for 变量 in可迭代对象:

        循环体

      else:

      用for 循环遍历字符串:

        优势:简单

        劣势:没有索引

    for c in s: # 把s中的每一个字符交给前面的c 循环
        print(c)

                        

  • 相关阅读:
    ModelForm中手动给某些字段赋值
    Ubuntu 18.04.4 LTS 安装Torch步骤
    High-Resolution Image Inpainting using Multi-Scale Neural Patch Synthesis
    Semantic Image Inpainting with Deep Generative Models
    Context Encoders: Feature Learning by Inpainting
    Focus Manipulation Detection via Photometric Histogram Analysis
    Learning to Detect Fake Face Images in the Wild
    A general approach to detect tampered and generated image
    Image splicing forgery detection combining coarse to refined convolutional neural network and adaptive clustering
    Detecting GAN-generated Imagery using Color Cues
  • 原文地址:https://www.cnblogs.com/gyh412724/p/9278804.html
Copyright © 2011-2022 走看看