python基础笔记二

python基础笔记二

一 基础数据类型(简单的知识点略过)

 1 数字 int
数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:
#bit_length() 当十进制用二进制表示时,最少使用的位数
v = 11
data = v.bit_length()
print(data)

2 字符串的索引与切片。

索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。
a = ABCDEFGHIJKprint(a[0])
print(a[3])
print(a[5])
print(a[7])
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。
a = ‘ABCDEFGHIJK’
print(a[0:3])
print(a[2:5])
print(a[0:]) #默认到最后
print(a[0:-1]) # -1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到K元素
print(a[0:5:2]) #加步长
print(a[5:0:-2]) #反向加步长
字符串常用方法:
#captalize,swapcase,titleprint(name.capitalize()) #首字母大写print(name.swapcase()) #大小写翻转
msg=’egon say hi’print(msg.title()) #每个单词的首字母大写
# 内同居中,总长度,空白处填充
ret2 = a1.center(20,”*”)
print(ret2)
#数字符串中的元素出现的个数。
# ret3 = a1.count(“a”,0,4) # 可切片
# print(ret3)
a2 = “hqw\t”#\t前面的补全
# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
ret4 = a2.expandtabs()
print(ret4)
a4 = “dkfjdkfasf54″#startswith 判断是否以…开头
#endswith 判断是否以…结尾
# ret4 = a4.endswith(‘jdk’,3,6)  # 顾头不顾腚
# print(ret4)  # 返回的是布尔值
# ret5 = a4.startswith(“kfj”,1,4)
# print(ret5)
#寻找字符串中的元素是否存在
# ret6 = a4.find(“fjdk”,1,6)
# print(ret6)  # 返回的找到的元素的索引,如果找不到返回-1
# ret61 = a4.index(“fjdk”,4,6)
# print(ret61) # 返回的找到的元素的索引,找不到报错。
#split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
# ret9 = ‘title,Tilte,atre,’.split(‘t’)
# print(ret9)
# ret91 = ‘title,Tilte,atre,’.rsplit(‘t’,1)
# print(ret91)
#format的三种玩法 格式化输出
res='{} {} {}’.format(‘egon’,18,’male’)
res='{1} {0} {1}’.format(‘egon’,18,’male’)
res='{name} {age} {sex}’.format(sex=’male’,name=’egon’,age=18)
#strip
name=’*egon**’print(name.strip(‘*’))
print(name.lstrip(‘*’))
print(name.rstrip(‘*’))
#replace
name=’alex say :i have one tesla,my name is alex’print(name.replace(‘alex’,’SB’,1))
#####is系列
name=’jinxin123’print(name.isalnum()) #字符串由字母或数字组成print(name.isalpha()) #字符串只由字母组成print(name.isdigit()) #字符串只由数字组成
3 元组tuple
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)(”a”,”b”,”c”)
4 列表list
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

li = [1,a,b,2,3,a]
# li.insert(0,55) #按照索引去增加
# print(li)
#
# li.append(‘aaa’) #增加到最后
# li.append([1,2,3]) #增加到最后
# print(li)
#
# li.extend([‘q,a,w’]) #迭代的去增
# li.extend([‘q,a,w’,’aaa’])
# li.extend(‘a’)
# li.extend(‘abc’)
# li.extend(‘a,b,c’)
# print(li)


# l1 = li.pop(1) #按照位置去删除,有返回值
# print(l1)
# del li[1:3] #按照位置去删除,也可切片删除没有返回值。
# print(li)
# li.remove(‘a’) #按照元素去删除
# print(li)
# li.clear() #清空列表


#
# li = [1,’a’,’b’,2,3,’a’]
# li[1] = ‘dfasdfas’
# print(li)
# li[1:3] = [‘a’,’b’]
# print(li)

查。
切片去查,或者循环去查。
其他操作。
count(数)(方法统计某个元素在列表中出现的次数)。
1 a = [“q”,”w”,”q”,”r”,”t”,”y”]
2 print(a.count(“q”))
index(方法用于从列表中找出某个值第一个匹配项的索引位置)
1 a = [“q”,”w”,”r”,”t”,”y”]
2 print(a.index(“r”))
sort (方法用于在原位置对列表进行排序)。
 reverse (方法将列表中的元素反向存放)。
1 a = [2,1,3,4,5]
2 a.sort()# 他没有返回值,所以只能打印a
3 print(a)
4 a.reverse()#他也没有返回值,所以只能打印a
5 print(a)
5 字典 dict
字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的。可哈希表示key必须是不可变类型,如:数字、字符串、元组。
  字典(dictionary)是除列表意外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
# dic[‘li’] = [“a”,”b”,”c”]
# print(dic)
# setdefault 在字典中添加键值对,如果只有键那对应的值是none,但是如果原字典中存在设置的键值对,则他不会更改或者覆盖。
# dic.setdefault(‘k’,’v’)
# print(dic) # {‘age’: 18, ‘name’: ‘jin’, ‘sex’: ‘male’, ‘k’: ‘v’}
# dic.setdefault(‘k’,’v1′) # {‘age’: 18, ‘name’: ‘jin’, ‘sex’: ‘male’, ‘k’: ‘v’}
# print(dic)
# dic_pop = dic.pop(“a”,’无key默认返回值’) # pop根据key删除键值对,并返回对应的值,如果没有key则返回默认返回值
# print(dic_pop)
# del dic[“name”] # 没有返回值。
# print(dic)
# dic_pop1 = dic.popitem() # 随机删除字典中的某个键值对,将删除的键值对以元祖的形式返回
# print(dic_pop1) # (‘name’,’jin’)
# dic_clear = dic.clear() # 清空字典
# print(dic,dic_clear) # {} None
#
# dic = {“name”:”jin”,”age”:18,”sex”:”male”}
# dic2 = {“name”:”alex”,”weight”:75}
# dic2.update(dic) # 将dic所有的键值对覆盖添加(相同的覆盖,没有的添加)到dic2中
# print(dic2)
# value1 = dic[“name”] # 没有会报错
# print(value1)
#
# value2 = dic.get(“djffdsafg”,”默认返回值”) # 没有可以返回设定的返回值
# print(value2)
其他操作
# item = dic.items()
# print(item,type(item)) # dict_items([(‘name’, ‘jin’), (‘sex’, ‘male’), (‘age’, 18)]) <class ‘dict_items’>
# 这个类型就是dict_items类型,可迭代的
# keys = dic.keys()
# print(keys,type(keys)) # dict_keys([‘sex’, ‘age’, ‘name’]) <class ‘dict_keys’>
# values = dic.values()
# print(values,type(values)) # dict_values([‘male’, 18, ‘jin’]) <class ‘dict_values’> 同上
字典的循环
# dic = {“name”:”jin”,”age”:18,”sex”:”male”}
# for key in dic:
# print(key)
# for item in dic.items():
# print(item)
# for key,value in dic.items():
# print(key,value)  

二 数据类型的总结

按存储空间的占用分(从低到高)
  • 数字
  • 字符串
  • 集合:无序,即无序存索引相关信息
  • 元组:有序,需要存索引相关信息,不可变
  • 列表:有序,需要存索引相关信息,可变,需要处理数据的增删改
  • 字典:无序,需要存key与value映射的相关信息,可变,需要处理数据的增删改
按存值个数区分
标量/原子类型
数字,字符串
容器类型
列表,元组,字典
按可变不可变区分
可变
列表,字典
不可变
数字,字符串,元组,布尔值
按访问顺序区分
直接访问
数字
顺序访问(序列类型)
字符串,列表,元组
key值访问(映射类型)
字典

 三 其他 for,enumerate,range

for循环:用户按照顺序循环可迭代对象的内容。
msg = ‘老男孩python是全国范围内最好的python培训机构’for item in msg:
    print(item)
li = [‘alex’,’银角’,’女神’,’egon’,’太白’]
for i in li:
    print(i)
dic = {‘name’:’太白’,’age’:18,’sex’:’man’}
for k,v in dic.items():
    print(k,v)
enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
li = [alex,银角,女神,egon,太白]
for i in enumerate(li):
print(i)
for index,name in enumerate(li,1):
print(index,name)
for index, name in enumerate(li, 100): # 起始位置默认是0,可更改
print(index, name)
range:指定范围,生成指定数字。
for i in range(1,10):
print(i)
for i in range(1,10,2): # 步长
print(i)
for i in range(10,1,-2): # 反向步长
print(i)
FutureTech

目前为止有一条评论

Kelthunny 发布于1:58 下午 - 1月 3, 2019

Viagra Buy Cheap Metronidazole Viagra Con Alcohol viagra online Viagra In Usa Overnight Uk Suppliers Of Amoxicillin Cheap Online Levitra Generic Propecia 5mg 1mg viagra Malegra Dxt No Prescription Quien Puede Tomar Viagra Cialis Farmacia Madrid cialis Antabuse Disulfiram Side Effects