python基础回顾【一】

1.基础数据类型:


image.png

如何转化:int("8") str(123)
2.变量定义与命名:


image.png

3.序列:


image.png

根据下标偏移量:切片

var1 = 'Hello World!'
var1[0]:  H
var1[-1]:!

4.序列的其他操作:

image.png

"H" in var1 :ture
var1 + var1
var1 * 3
5.元组:
image.png

shengxiao=((1,20),(2,20),(3,21))
比较:321>220 不可变更。
shengxiao[2] > shengxiao[1]
a =list(filter(lamdba x: x b=len(a) #序列中值的个数

6.列表:
添加:

classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates.append('Adam')
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam']
例子:偶数的平方  列表推导式
blist = [i*i for i in range(1, 11) if(i % 2) == 0]
要删除 list 末尾的元素,用 pop()方法:{remove()}
>>> classmates.pop()
'Adam'
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']

>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']

7.字典:


image.png
例子:
dict2 = { 'x':1 , 'y':2 }
dict2['z'] = 3

print(dict2) :  {'z': 3, 'x': 1, 'y': 2}
获取所有的key:
for  each_key in  cz_num.keys():  即可。

8.对文件的基本操作


image.png
例子:
添加一个 w直接往里写
 file3 = open('name.txt','a')
 file3.write('刘备')
 file3.close()
读取一行
file5 = open('name.txt')
for line in file5.readlines():
     print(line)
     print('=====')
file5.close()
读取的时候是根据指针所在的位置进行读取的,read(1)一个字节,下次读取就是在第二的字节开始。

第一个参数代表偏移位置,第二个参数  0 表示从文件开头偏移  1表示从当前位置偏移,   2 从文件结尾
file6.seek(5,0)    

9.异常检测和处理:


image.png

10.函数:


image.png
import re
#如何通过函数,获取文件文件信息,且计算数据

def find_main_charecters(charecter_name):
    with open('sanguo.txt', encoding='gb18030') as f:
#去掉换行
        data = f.read().replace("\n", "")
#计算name在data的次数。且转化数字
        name_num = re.findall(charecter_name, data)
        # print('主角 %s 出现了%s 次'%(charecter_name,len(name_num)))
    return charecter_name, len(name_num)


name_dict = {}
with open('name.txt', encoding='utf-8') as f:
    for line in f:
        names = line.split('|')
        for n in names:
            #print(n)
            #接收换回的数据
            char_name, char_number = find_main_charecters(n)
            name_dict[char_name] = char_number

weapon_dict = {}
with open('weapon.txt', encoding='utf-8') as f:
        i = 1
        for line in f:
             if i%2 == 1:
                 #Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
                 #注意:该方法只能删除开头或是结尾的字
                weapon_name, weapon_number = find_main_charecters(line.strip())
                weapon_dict[weapon_name] = weapon_number
#weapon.txt每个数字隔离了一行
             i = i+1

#对name_dict.items()排序,以item【1】开始
name_sorted = sorted(name_dict.items(), key=lambda item: item[1], reverse=True)
print(name_sorted[0:10])

weapon_sorted = sorted(weapon_dict.items(), key=lambda item: item[1], reverse=True)
print(weapon_sorted[0:10])
image.png

image.png

image.png

结果:


image.png
# # 取得参数的个数
 def  howlong(first, *other):
     print( 1 + len(other))

 howlong()

你可能感兴趣的:(python基础回顾【一】)