zoukankan      html  css  js  c++  java
  • 2018.7.30笔记(基础的数据类型,字符串的操作,for循环)

    一.基本数据类型(int,bool,str)
    1.基本数据数据类型
    int 整数
    str 字符串. 一般不存放大量数据
    bool 布尔值. 用来判断.True, False
    list 列表.用来存放大量数据,[]表示.里面可以装各种数据类型
    tuple 元组.只读列表. ()表示
    dict 字典.{key:value}
    set 集合.不重复
    2.int类型
      bit_length() 返回一个数的二进制长度
    3.bool类型
      布尔只有两个值.True, False.一般没什么操作
    类型转换问题:
        想把xx转换成yy. yy(xx)
    可以False的内容:0,"", [], tuple(),{},None
    所有的空都是False.所有的非空是True
    by luffycity.com
    
    # a = 10
    # print(type(a))
    # s = str(a)
    # print(type(s))
    #
    # int(s)
    # 想把某数据转换成xxx数据类型.   xxx(数据)
    
    # a = 0 # False
    # print(bool(a))
    
    # s = "" # 空字符串是false
    # print(bool(s)) # True
    
    # 空的东西是False. 非空的东西是True
    # lst = [1] # 空列表是False
    # print(bool(lst))
    
    # dic = {'jj':'林俊杰'} # 空字典是False
    # print(bool(dic))
    
    # a = None # 表示空. 真空.
    # print(bool(a))
    
    # 所有的空都是False. 所有的非空都是True
    # 想把某数据装换成xxx数据类型. xxx(数据)
    # str => int
    # int(s)
    # int => str
    # str(i)
    # lst => tuple
    # tuple(lst)
    # tuple => list
    # list(tu)

    二.str类型 字符串

      由', ", ''' ,""" 括起来的内容就是字符串

      字符串是不可变的数据类型,不论你执行什么操作,原字符串是不会改变的,每次操作都会返回新字符串

    1.索引和切片

    索引从0开始,使用[下标 ]可以获取每一个字符,还可以倒着数

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

    1.顾头不顾尾
    2.默认从左右到取值
    3.当步长为负可以从右往左取值

    例题:

    #by luffycity.com
    # s = "伊丽莎白鼠"
    # print(s[0])
    # print(s[1])
    # print(s[2])
    # print(s[3])
    # print(s[4])
    # # print(s[5]) # 索引不能超过边界
    # print(s[-1]) # 倒数第一个
    # print(s[-2])
    # print(s[-3])
    # print(s[-4])
    # print(s[-5])
    
    # s = "伊丽莎白鼠的溜肥肠还有挖掘机"
    
    # 切片 [起始位置: 结束位置] 1.顾头不顾尾, 2.从左往右切
    # print(s[1:3])   # 从1切到3. 但是取不到3  [1,3)
    # print(s[1:]) # 从1开始切. 切到结尾
    # print(s[:2]) # 从头切到2
    # print(s[:]) # 从头到尾
    # print(s[-3:-1]) # 只能从左往右切
    
    # 给出第三个参数来控制方向,第三个参数叫步长
    # print(s[-1:-3:-1]) # - 表示反方向. 从右往左切
    
    # print(s[4:10:3])
    # print(s[-3:-9:-2])

    2.字符串相关操作

        1. upper() 转换成大写
    2. stript() 去掉空白
    3. replace(old, new) 把xxx替换成xxxx
    4. split() 切割. 返回列表. 用多长的刀. 就要损失掉多少
    5. startswith() 判断是否以xxx开头
    6. find(), count(), index()
      
    7. len() 字符串长度. python的内置函数
    s = "al1ex is a gay and Wu傻sir is A gay too"
    
    # s1 = s.capitalize() # 把首字母变成大写
    # print(s1)
    
    # s2 = s.lower() # 小写
    # print(s2)
    
    # s3 = s.upper()  # 大写
    # print(s3)
    
    # s4 = s.swapcase() # 大小写互换
    # print(s4)
    
    # s2 = "БBß"  # 俄美德
    # print(s2)
    # print(s2.lower())
    # print(s2.casefold())
    
    # s5 = s.title() # 把每个单词的首字母大写
    # print(s5)
    
    # s = "sb"
    # s1 = s.center(10, "*") # 强行使用*在原字符串左右两端进行拼接. 拼接成10个单位
    # print(s1)
    
    # s = "    alex    is    a   gay   "
    # s1 = s.strip() # 默认去掉空格. 空白\t \n
    # print(s1)
    
    # username = input("请输入用户名:").strip()
    # password = input("请输入密码:").strip()
    # if username == 'alex' and password =="123":
    #     print("成功")
    # else:
    #     print("失败")
    
    # s = "sb alex wusir sb sb taibai taibai sb"
    # print(s.strip("sb")) # 可以指定要去掉的内容
    
    # s = "泰坦尼克号, 西虹市首富, 小猪佩奇, 冒险王"
    # s1 = s.replace("冒险王", "西西里的美丽传说")
    # s2 = s.replace("佩奇", "wusir")
    # print(s2)
    #
    # s = "alex_wusir_taibai_ritian"
    # s1 = s.replace("_","")
    # print(s1)
    
    # s8 = "sylar_alex_taibai_wusir_eggon"
    # # s9 = s8.replace("i", "sb", 2) # 换两次
    # # print(s9)
    #
    # lst = s8.split("taibai") # 切完的结果是一个列表. 列表中装的是字符串. 用什么切. 就会损失掉什么
    # print(lst)
    
    # s = """我家大门常打开
    # 开放怀抱等你
    # 后面是什么歌词
    # 我忘了"""
    # lst = s.split("\n")
    # print(lst)
    
    # s = "我今天下午要去吃饭饭"
    # lst = s.split("我今天下午要去吃饭饭哈哈哈") # 没切
    # print(lst)
    
    # s = "我叫%s, 我今年%s了, 我喜欢%s" % ("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{}, 我今年{}了, 我喜欢{}".format("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{0}, 我今年{1}了, 我喜欢{2}".format("周杰伦", "40", "昆凌")
    # print(s)
    
    # s = "我叫{name}, 我今年{age}了, 我喜欢{hobby}".format(hobby="周杰伦", age="40", name="昆凌")
    # print(s)
    
    # s = "alex is a gay"
    # print(s.startswith("tory")) # 以xxx开头
    # print(s.endswith("girl")) # 以xxx结尾
    
    # s = "I have a dream. I want to kill you!"
    # 都可以进行索引范围
    # print(s.count("dream")) # 计算a在字符串中出现的次数
    # print(s.find("a")) # 查找xxx在字符串中出现的位置. 只找第一次出现的位置, 没有就返回-1
    # print(s.index("z")) # 当字符串不存在的时候. 报错
    
    
    # s = "abcdefg1@"
    # print(s.isdigit()) # %d
    # print(s.isalpha()) # 字母
    # print(s.isalnum()) # 是否由数字和字母组成
    
    # s = "壹仟贰佰五十六萬拾"
    # print(s.isnumeric())
    
    # 字符串长度, python的内置函数len(), int(), bool(), str(), type()
    # s = "娃哈哈可口可乐"
    # print(len(s)) # 字符串中的字符的个数
    
    
    # s = "王小利刘能赵四"
    # # # 对字符串进行遍历.
    # n = 0
    # while n < len(s):
    #     print(s[n])
    #     n = n + 1
    #
    # # 迭代
    # for c in s: # charactor
    #     print(c)
    3. for循环
    for 变量 in 可迭代对象:
    循环体, 也存在break和continue
    else:
    当循环结束的时候会执行
     
     
     
  • 相关阅读:
    融云技术分享:全面揭秘亿级IM消息的可靠投递机制
    企业微信的IM架构设计揭秘:消息模型、万人群、已读回执、消息撤回等
    喜马拉雅亿级用户量的离线消息推送系统架构设计实践
    uni-app 项目使用 npm 包中的小程序自定义组件
    Leetcode563. 二叉树的坡度
    vue看源码遇到 报错
    windows使用
    mysql 显示行号
    从优秀到卓越
    【面经】阿里蚂蚁金服22秋招-Java后端
  • 原文地址:https://www.cnblogs.com/Bug66/p/9393676.html
Copyright © 2011-2022 走看看