在上次课程中简要的讲述了Python的基础常识,现在来详细的学习一下吧!
面向过程和面向对象
面向过程:C
面向对象:Java、Python等
类和对象的含义:
类,是对事物的抽象,比如:车
对象,是类的一个实例,比如:别克
类和对象的关系:
类是对象的定义,而实例是真正的事物,它存放了类中所定义的对象的具体信息;
对象的创建,也就是类的实例化。
对于Python,一切事物都是对象,对象基于类的创建。
具体实例讲解
右边的两个对象是基于左边的字符串类创建的,而两个字符串同时具有了字符串类的所有功能;
所有的字符串类的功能集合又成为"string"。依次类推,还有list、dict、int、float等等,下面会依次分别详细讲解其功能和用法。
abs(x)#返回数字的绝对值 >>> num = -20 >>> abs(num) 20 bit_length #转化为二进制数(0b二进制标识) >>> n = 10 >>> bin(n) ‘0b1010‘ >>> def __and__(self, *args, **kwargs)#位运算与(&) >>> n & s 10 _bool_()#返回布尔值 >>> a.__bool__() True divmod 取商,取余 num = 29 res = num.__divmod__(5) print(res) _add_() + res = num.__add__(10) print(res) res = num + 10 print(res) _mod_() 取商 >>> a.__mod__(3) 2 >>> a % 3 2
1 1、字符串中大小写的转换: 2 3 s.lower() #大写转小写 4 5 >>> s = ‘HAHA‘ 6 >>> s.lower() 7 ‘haha‘ 8 9 s.upper()#小写转大写 10 11 >>> s = ‘haha‘ 12 >>> s.upper() 13 ‘HAHA‘ 14 15 s.swapcase()#大小写互换 16 17 >>> s = ‘HaHa‘ 18 >>> s.swapcase() 19 ‘hAhA‘ 20 21 s.capitailze()#首字母转大写 22 23 >>> s = ‘tom‘ 24 >>> s.capitalize() 25 ‘Tom‘ 26 27 2、字符串在输出时的对齐: 28 29 s.ljust(width,[filchar])#左对齐 30 31 >>> s = ‘tom‘ 32 >>> s.ljust(10,‘*‘) 33 ‘tom*******‘ 34 35 s.rjust(width,[filchar])#右对齐 36 37 >>> s.rjust(10,‘*‘) 38 ‘*******tom‘ 39 40 s.center(width,[filchar])#中间对齐 41 42 >>> s.center(10,‘*‘) 43 ‘***tom****‘ 44 45 s.zfill(width)#s 为长度,不足部分用0补充 46 47 >>> s.zfill(2) 48 ‘tom‘ 49 50 >>> s.zfill(10) 51 ‘0000000tom‘ 52 53 3、字符串中的搜索和替换: 54 55 s.index(sub[, start[, end]])#返回s中出现sub的第一个字母的编号,如果s中没有sub则返回一个运行错误。start/end相当于作用域。 56 57 >>> s.index(‘o‘[0:]) 58 1 59 60 S.find(sub[, start[, end]])#和s.find()相同,只是没有sub时会返回-1. 61 62 >>> s.find(‘o‘[0:]) 63 1 64 65 S.rfind(sub[, start[, end]])#从右边开始查找,如果找到返回字母编号,如果没有则返回-1. 66 67 >>> s = ‘tomasdsadasdqweqwd‘ 68 >>> s.rfind(‘d‘[0:]) 69 17 70 71 S.rindex(sub[, start[, end]])#从右边开始查找 72 73 >>> s.rindex(‘d‘[0:]) 74 17 75 76 s.count()#统计字符出现次数 77 78 >>> s.count(‘d‘) 79 4 80 81 s.replace(old,new,[count])#替换和次数 82 83 >>> s.replace(‘d‘,‘k‘,4) 84 ‘tomasksakaskqweqwk‘ 85 >>> s 86 ‘tomasdsadasdqweqwd‘ 87 88 s.strip([chars])#情况空格 89 90 >>> s = ‘ sdsds ‘ 91 >>> s 92 ‘ sdsds ‘ 93 >>> s.strip() 94 ‘sdsds‘ 95 96 s.lstrip() 97 98 s.rstrip()#分别为清空左边的空格和右边的空格 99 100 >>> s.lstrip() 101 ‘sdsds ‘ 102 >>> s.rstrip() 103 ‘ sdsds‘ 104 105 s.expandtabs([tabsize])#将每个tab替换为空格,默认是8个 106 107 >>> s.expandtabs(2) 108 ‘ sd ‘ 109 >>> s 110 ‘\tsd \t‘ 111 112 S.split(sep=None, maxsplit=-1)#以seq为分隔符,把s分成一个list;maxspilt表示分割的次数,默认为空格 113 114 >>> s = ‘asdaeqwfwfqdsajdoqwqdsad‘ 115 >>> s.split(‘d‘,2) 116 [‘as‘, ‘aeqwfwfq‘, ‘sajdoqwqdsad‘] 117 >>> s.split(‘d‘,4) 118 [‘as‘, ‘aeqwfwfq‘, ‘saj‘, ‘oqwq‘, ‘sad‘] 119 120 s.encode()#输出为encode 121 name = "小明" 122 res = name.encode() 123 print(res) 124 125 4、判断是否全是字母和数字 126 127 s.isalpha() #判断是否全是字母 128 129 >>> s.isalpha() 130 True 131 132 s.isdigit()#判断是否全是数字 133 134 >>> s.isdigit() 135 False 136 s.isspace()#判断是否全是空白字符 137 138 >>> s.isspace() 139 False 140 141 s.islower()#判断是否全部小写 142 143 >>> s.islower() 144 True 145 146 s.isupper()#判断是否全是大写 147 148 >>> s.isupper() 149 False 150 151 s.istitle()#首字母是否大写 152 153 >>> s.istitle() 154 False
l.append()#增加 >>> l = [1,2,3,4,] >>> l.append(‘haha‘) >>> l [1, 2, 3, 4, ‘haha‘] l.clear()#清空 >>> l.clear() >>> l [] l.copy()#copy列表 >>> l1 = l2.copy() >>> l1 [‘a‘, ‘asd‘, ‘tom‘] >>> l2 [‘a‘, ‘asd‘, ‘tom‘] l.count()#统计元素个数 >>> l = [‘asdsa‘,‘das‘,1,3,4,5,6,2,2,2,2,2,2,3,4,] >>> l.count(2) 6 l.extend()#扩展 >>> l1 [‘a‘, ‘asd‘, ‘tom‘] >>> l.extend(l1) >>> l [‘asdsa‘, ‘das‘, 1, 3, 4, 5, 6, 2, 2, 2, 2, 2, 2, 3, 4, ‘a‘, ‘asd‘, ‘tom‘] l.index(x)#显示x元素的下标 >>> l.index(‘a‘) 0 >>> l [‘a‘, ‘asd‘, ‘tom‘] l.insert(num,[items])#在指定下标位置增加元素 >>> l.insert(2,‘ss‘) >>> l [‘a‘, ‘asd‘, ‘ss‘, ‘tom‘] l.pop()#随机删除一个元素 >>> l.pop() ‘tom‘ >>> l [‘a‘, ‘asd‘, ‘ss‘] l.remove(item)#删除指定元素 >>> l.remove(‘a‘) >>> l [‘asd‘, ‘ss‘] l.reverse()#反转 >>> l [‘a‘, ‘asd‘, ‘tom‘] >>> l.reverse() >>> l [‘tom‘, ‘asd‘, ‘a‘] l.sort()#排序;Python3里不允许字母数字混排 >>> l.sort() >>> l [‘a‘, ‘asd‘, ‘tom‘] 元组的元素不可以被修改,元组的元素的元素可以被修改! t1 = (2,3,4,5,{‘kk‘:‘a‘,‘c‘:‘d‘}) print(t1) print(t1[4]) t1[4][‘kk‘] = ‘haha‘ print(t1)
字典是Python语言中唯一的映射类型。简单地说字典就是用大括号包裹的键值对的集合。
a、字典不支持拼接和重复操作符(+,*)
b、字典的比较操作
先比较字典的长度也就是字典的元素个数
键比较
值比较
d.clear()#清空 d.copy()#copy >>> a = d.copy() >>> a {‘b‘: ‘123‘, ‘a‘: ‘asd‘} >>> l = [2,3,5,6,7] >>> d = dict.fromkeys(l) >>> d {2: None, 3: None, 5: None, 6: None, 7: None} >>> d = dict.fromkeys(l,‘a‘) >>> d {2: ‘a‘, 3: ‘a‘, 5: ‘a‘, 6: ‘a‘, 7: ‘a‘} #### items()#列表形式返回 >>> dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘} >>> dic.items() dict_items([(‘k1‘, ‘v1‘), (‘k2‘, ‘v2‘), (‘k3‘, ‘v3‘)]) #### keys()#取出所有的key >>> dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘} >>> dic.keys() dict_keys([‘k1‘, ‘k2‘, ‘k3‘]) #### pop()#通过删除指定的key,删除value >>> dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘} >>> dic.pop(‘k2‘) ‘v2‘ >>> dic {‘k1‘: ‘v1‘, ‘k3‘: ‘v3‘} #### popitme()#随机删除一对key-value >>> dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘} >>> dic.popitem() (‘k2‘, ‘v2‘) >>> dic {‘k1‘:‘v1‘,‘k3‘:‘v3‘} #### setdefault()#如果key不存在则创建;如果存在,则返回已存在的值且不修改 >>> dic = {‘k1‘:‘v1‘,‘k2‘:‘v2‘,‘k3‘:‘v3‘} >>> dic.setdefault(‘k2‘) ‘v2‘ >>> dic.setdefault(‘k4‘,‘v4‘) ‘v4‘ >>> dic {‘k1‘: ‘v1‘, ‘k4‘: ‘v4‘, ‘k2‘: ‘v2‘, ‘k3‘: ‘v3‘} #### update()#更新 >>> dic {‘k1‘: ‘v1‘, ‘k4‘: ‘v4‘, ‘k2‘: ‘v2‘, ‘k3‘: ‘v3‘} >>> dic2 {‘k5‘: ‘v5‘} >>> dic.update(dic2) >>> dic {‘k1‘: ‘v1‘, ‘k5‘: ‘v5‘, ‘k4‘: ‘v4‘, ‘k2‘: ‘v2‘, ‘k3‘: ‘v3‘} >>> dic2 {‘k5‘: ‘v5‘} #### values() >>> dic {‘k1‘: ‘v1‘, ‘k2‘: ‘v2‘, ‘k3‘: ‘v3‘} >>> dic.values()#所有的值 dict_values([‘v1‘, ‘v2‘, ‘v3‘]) ####
字典的遍历
遍历key:
for key in dt.keys():
print(key)
遍历字典的value:
for value in dt.values():
print(value)
遍历字典的元素:
for item in dt.items():
print(item)
遍历字典的key-value
for k,v in dt.items():
print(k,v)
原文:http://www.cnblogs.com/xiajie/p/5119779.html