Python日志

初学python日志


2020/3/9
  1. input()输入默认为char型,可以用int()、list()转换

    #依次输入1234
    A = input()			# A={char}'1234'
    B = int(input())	# B={int}1234
    C = list(input())	# C={list:4}['1','2','3','4']
    
  2. 字符串分隔函数str.split()的用法
    str.split(分隔符:默认空字符(空格、\n、\t), 分隔次数:默认-1(所有)).

    str = 'abcdef \nabc \nabcd';
    print(str.split());       # ['abcdef', 'abc', 'abcd']
    print(str.split(' ', 1)); # ['abcdef', '\nabc \nabcd']
    txt = "Google#Runoob#Taobao#Facebook"
    print(txt.split("#", 1))  # ['Google', 'Runoob#Taobao#Facebook']
    
  3. 将输入的带有分隔符的char型数字转换为int型数组

    arr = input()						# arr={char}'1234'
    arr = [int(n) for n in arr.split()] # arr={list:1}[1234]
    
  4. python无自增语法,表达自增用i += 1

  5. 求和函数sum()的用法
    sum(可迭代对象:列表、元组、集合[, 参数])

    sum([0,1,2,3,4], 2)      # 12
    
  6. 【报错: xxx index out of range】循环条件越界

    • 条件执行有先后顺序,先对参数进行约束。

      • python
        while p < length and A[p] == B[p]:

      • python
        while A[p] == B[p] and p < length:#string index out of range

    • 执行list[-1]时list不能为空

      stack = [1] #初值
      while j < 26 and list[j] == stack[-1]:
          stack.pop()
          j += 1
          if len(stack) == 0:#隐含的边界条件
              break
      
  7. 列表排序函数list.sort()用法
    list.sort(比较的元素(默认第一个),排序规则(默认为False升序))

    def takeSecond(elem): # 获取列表的第二个元素
        return elem[1]
    random = [(2,2),(3,4),(4,1),(1,3)]
    random.sort(key=takeSecond,reverse=False) # [(4,1),(2,2),(1,3),(3,4)]
    
  8. 字符串的插入、删除、替换

    • 删除(即替换为空)

      s = 'abcabcg'
      if 'bc' in s:
          s1 = s.replace('bc','') # 删除即把对应字符替换为空
          s2 = s.replace('bc','',1) # 只删除第一次出现的字符
      
    • 替换

      if 'bc' in s:
          s1 = s.replace('bc','xy') # 把对应字符替换为'xy'
          s2 = s.replace('bc','xy',1) # 只替换第一次出现的字符
      
    • 插入

      s_list = list(s)
      s_list.insert(5,'0')
      s = ''.join(s_list) # s='abcde0fg'
      

2020/3/10
  1. 多元素赋值可以连等或者分组

    a = b = c = 0
    i, j = 1, 2
    
  2. 【报错:name ‘List’ is not defined】在头部导入typing模块

    from typing import List
    

    typing模块的作用:

    • 类型检查,防止运行时出现参数和返回值类型不对的情况
    • 作为开发文档附加说明,方便使用函数时传入和返回正确的参数,利于开发效率
    • 该模块并不会实际影响到程序的运行,不会报错,但是会有提示。

    typing常用类型:

    • int,long,float: 整型,长整形,浮点型;
    • bool,str: 布尔型,字符串类型;
    • List, Tuple, Dict, Set:列表,元组,字典, 集合;
    • Iterable,Iterator:可迭代类型,迭代器类型;
    • Generator:生成器类型;
  3. 【报错:local variable ‘xxx’ referenced before assignment】局部变量赋值前被引用

    • 在函数中使用global关键字如:global xxx
    • 在迭代/循环前为变量赋初值

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值