python常用

87 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第4天,点击查看活动详情

python解释型语言 可变对象引用传递,不可变对象值传递

常用运算符

常用运算符
+ - * /加减乘除
%取余数
//取整数
**幂次(用x** y或 pow(x,y)
&位运算符中的位与
image.png位运算符中的位或
image.png位运算符中的位异或
image.png为运算符中的取反
abs(x)取绝对值
int(x)转为整数
float(x)转为浮点数
comple(re,im)将参数转化为负数,re为复数的实部,im为复数的虚部

变量和简单数据类型

修改字符串的大小写的方法

  1. title() 将每个单词首字母改为大写
  2. upper() 将字符串改为全部大写
  3. lower() 将字符串改为全部小写
name = "ada lovelace"
print(name.title()) # Ada Lovelace
print(name.upper()) # ADA LOVELACE
print(name.lower()) # ada lovelace

使用制表符或换行符来添加空白

  1. \t 在字符串中添加制表符
  2. \n 在字符串中添加换行符
print("Languages:\n\tpython3\n\tc++\n\tgo")

image.png

删除空白

  1. rstrip() 删除字符串末尾的空白
  2. lstrip() 剔除字符串开头的空白
  3. strip() 去除字符串两边的空白

列表

[]表示列表 用逗号分割其中的元素 索引从0开始

bicycles = ['trek','cannodate','redline','specialize']
print(bicycles)
print(bicycles[0])
print(bicycles[0].title())

image.png

修改 添加 和 删除元素

lst.append(val) 在列表尾部添加元素

lst = ['trek','cannodate','redline','specialize']
print(lst) # ['trek', 'cannodate', 'redline', 'specialize']
lst.append('tail') #['trek', 'cannodate', 'redline', 'specialize', 'tail']
print(lst)

lst.insert(idx,val) 在列表的任何位置添加新元素

lst = ['trek','cannodate','redline','specialize']
print(lst) # ['trek', 'cannodate', 'redline', 'specialize']
lst.insert(1,"python3")
print(lst) # ['trek', 'python3', 'cannodate', 'redline', 'specialize']

del lst[idx] 根据位置删除列表中的元素

lst = ['trek','cannodate','redline','specialize']
print(lst) # ['trek', 'cannodate', 'redline', 'specialize']
del lst[1]
print(lst) # ['trek', 'redline', 'specialize']

lst.pop(idx) 清除并返回索引为idx的元素(默认为尾部)并接着使用它

lst = ['trek','cannodate','redline','specialize']
pop_ed=lst.pop(0) # 复杂度 O(n)  pop()尾部O(n)
print(lst) # ['trek', 'redline', 'specialize']
print(pop_ed) #trek

lst.remove(val) 找到列表的位置并删除

lst = ['trek','cannodate','redline','specialize']
lst.remove('specialize') # 不存在有异常
print(lst) # ['trek', 'cannodate', 'redline']

组织列表

  1. lst.sort() 永久性的修改列表的排列顺序
  2. lst.reverse() 倒着打印列表
  3. len(lst) O(1)求列表长度

操作列表

创建列表

  1. range(start,end) 生成数字列表
  2. min(c) max(c) sum(c) 对数字列表进行统计计算
  3. 列表解析 (字典也可以解析)
# range(start,end) 生成数字列表
seq = [x+1 for x in range(10)]
print(seq)  # [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]


cube = [x**3 for x in range(4)]
print(cube)  # [0, 1, 8, 27]


even_cube = [x ** 3 for x in range(4) if not x % 2]
print(even_cube)    # [0, 8]

dict = {'one': 1, 'two': 2, 'three': 3}
print(dict)     # {'one': 1, 'two': 2, 'three': 3}

cube = {key+'_cube':value ** 3 for key , value in dict.items()}
print(cube)  # {'one_cube': 1, 'two_cube': 8, 'three_cube': 27}

使用列表中的一部分

  1. 切片 和 range()同理,在到达第二个索引之前的元素停止
  2. 遍历切片 如果要遍历列表部分元素,可在for循环中使用切片
  3. 复制列表 根据既有列表创建全新的列表
seq = [x + 1 for x in range(10)]
for se in seq[0:3]:
    print(se, end=" ")  # 1 2 3 

元组

不能修改的列表

seq = (1, 3, 3)
for x in seq:
    print(x, end=" ");

集合

lst = [1,3,4,3,5,'false']
aset = set(lst)
bset = set([3,4,'helle word'])
print(len(aset))
print(aset.union(bset))  # 并
print(aset.difference(bset))  # 差

字典

dict = {"a": 1, 'b': 2, 'c': 3};
for k, v in dict.items():
   print

异常处理

try:
   # 提示用户输入一个整数
   num = int(input("输入一个整数:"))
   # 输入不是整数就报错,输入0也是报错,这里我们需要捕获异常 赋值错误的第一个单词作为关键字进行处理
   result = 8 / num
   print(result)
except ValueError:
   print("请输入数字")
except Exception as result:
   print("未知错误%s" % result)
else:
   print("尝试成功!")
finally:
   print("无论是否出现错误都会执行的代码")
print("===" * 20)