1.基础数据类型:
image.png
如何转化:int("8") str(123)
2.变量定义与命名:
image.png
3.序列:
image.png
根据下标偏移量:切片
var1 = 'Hello World!'
var1[0]: H
var1[-1]:!
4.序列的其他操作:
"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 , a ) ) #取出a中小于b的值 b=(1,28)
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()
网友评论