PYTHON

Python知识:

1、字典排序使用到的函数具体是哪个?举例说明

排序用到的函数是OrderedDict 举例如下:

from collections import OrderedDict
data=OrderedDict()
data['name']='liu lele'
data['age']=24
data['address']='xian'
print(dict(data))
输出结果为:
{'name': 'liu lele', 'age': 24, 'address': 'xian'}

字典的排序

dict={'name':'liu lele','age':24,'city':'宝鸡'}
print(dict(sorted(dict.items(),key=lambda s:s[0])))

2、字符串格式化使用到的关键字是哪个,举例说明

用到的是format()简写为f 举例如下:

name=input('请输入你的名字\n')
age=input('请输入你的年龄\n')
address=input('请输入你的地址\n')
print(f'my name is {name},and,my age is {age},and, my address is {address}')
输出结果为:
请输入你的名字
liu
请输入你的年龄
24
请输入你的地址
xian
my name is liu,and,my age is 24,and, my address is xian

3、列表中append()与insert()的区别是什么?举例说明

append()是在列表的末尾添加一位 insert() 是在列表的任意位置添加 举例如下:

list=[1,2,3,4]
list.append(100)
print(list)
list.insert(0,100)
print(list)
输出结果为:
[1, 2, 3, 4, 100]
[100, 1, 2, 3, 4, 100]

4、列表与元组的区别是什么

列表是可变序列

元租是不可变序列

字典和列表的区别 字典是无序的 列表是有序的

5、查看一个对象的类型关键字是什么?查看对象的内存地址关键字是什?

查看一个对象的类型的关键字是 type 查看对象的内存地址的关键字为 id 举例为:

list=[1,2,3,4]
print(type(list))
print(id(list))
输出结果为:
<class 'list'>
2134373648960

6、怎么获取字符串的索引信息

获取字符串的索引信息:index() 举例如下

str="hello"
print(str.index('o'))
输出为:4

获取字符串的所有索引信息:enumerate 举例如下:

str='hello'
for item in enumerate(str):
  print((item))
输出结果为:
(0, 'h')
(1, 'e')
(2, 'l')
(3, 'l')
(4, 'o')

7、举例说明列表推导式的使用

写出1到10中大于4的数

list=[x for x in range(1,10) if x>4]
print(list)
输出为:[3, 4, 5, 6, 7, 8, 9]

8、当元组只有一个对象的时候,需要注意什么?

后边应该加一个逗号,不然会当作字符串

9、怎么理解函数的返回值?

1,在单个函数的角度而言,函数写不写return其实没有很大的价值

2,通过返回值可以把函数与函数之间建立关联关系

10、怎么理解函数的动态参数

当函数的形式参数个数和形式参数的类型不确定时这时候我们就会使用动态参数来解决,在python中 *代表元组 **代表是字典

11、字符串与列表之间的互相转换

字符串转列表利用split()举例如下

str='hello world'
str_list=str.split(',')
print(str_list)
print(type(str_list))
输出为:
['hello world']
<class 'list'>

列表转字符串利用join()举例如下:

list=["python","java","go"]
list_str=' '.join(list)
print(list_str)
print(type(list_str))
输出为:
python java go
<class 'str'>

12、字符串的替换使用到的方法是?

字符串替换用的是replace举例如下:

s="hello,java"
print(s.replace('java','python'))
输出为:hello,python

13、怎么理解is,in,==

is 比较的是两个对象的的内存地址

in 比较的是两个对象是否是包含关系

== 比较的是两个的内容和类型是否相等

14、使用os库编写一个文件的路径拼接

使用到的方法是os.path.join(a,b)

获取当前路径 os.path.dirname(file)

15、怎么理解序列化与反序列化

序列化:把python对象(字典,列表,元组)转为字符串 用到的关键字是dumps

反序列化:把字符串转为python对象(字典,列表,元组)用到的关键字是loads

列表的序列化与反序列化

序列化
list=[x for x in range(5)]
list_str=json.dumps(list)
print(list_str)
print(type(list_str))
反序列化
str_list=json.loads(list_str)
print(str_list)
print(type(str_list))
运行结果:
[0, 1, 2, 3, 4]
<class 'str'>
[0, 1, 2, 3, 4]
<class 'list'>

元组的序列化和反序列化

序列化
tuple=("apple","orange")
tuple_str=json.dumps(tuple)
print(tuple_str)
print(type(tuple_str))
反序列化
str_tuple=json.loads(tuple_str)
print(str_tuple)
print(type(str_tuple))
运行结果为
["apple", "orange"]
<class 'str'>
['apple', 'orange']
<class 'list'>

字典的反序列化

序列化
dict={"name":"Lucy","age":23,"city":"xi'an"}
dict_str=json.dumps(dict,indent=True,ensure_ascii=True)
print(dict_str)
print(type(dict_str))
反序列化
str_dict=json.loads(dict1_str)
print(str_dict)
print(type(str_dict))
运行结果为
{
"name": "Lucy",
"age": 23,
"city": "xi'an"
}
<class 'str'>
{'name': '黛西', 'age': 23, 'city': '西安'}
<class 'dict'>

16、举例说明文件的a,w,r的模式

文件的 w(写) 模式

def open_w():
f=open(file='log', mode='w',encoding='utf_8')
f.write('世界你好:')
f.close()
open_w()
把世界你好:写进log

文件的 a (追加)模式

def open_a():
f=open(file='log', mode='a',encoding='utf_8')
f.write('hello')
f.close()
open_a()
把hello追加在log文件里的世界你好:后面

文件的 r(只读) 模式r

def readFile():
f=open('log','r',encoding='utf_8')
print(f.read())
f.close()
readfile()
读取文件的所有内容

17、使用with上下文的模式来处理文件

def withFile():
with open('log.txt','r') as f:
print(f.read())
withFile()
运行结果为log.txt文件里的内容

18、怎么理解编码与解码

编码(encode):把传递的信息按照一定的规则进行组织

解码(decode):把收到的信息按照一定的规则进行解析

这个规则必须是编码者和解码者事先都知道或约定好的。

str1='刘乐乐'
str_bytes=str1.encode('utf_8')
print(str_bytes)
print(type(str_bytes))

bytes_str=str_bytes.decode(('utf_8'))
print(bytes_str)
print(type(bytes_str))
运行结果为:
b'\xe5\x88\x98\xe4\xb9\x90\xe4\xb9\x90'
<class 'bytes'>
刘乐乐
<class 'str'>

19、使用datetime获取当前的时间

import datetime
print(datetime.datetime.now())
输出为:当前时间

20、使用time等待5秒的时间

import datetime
import time as t
print(datetime.datetime.now())
t.sleep(5)
print(datetime.datetime.now())
两个输出时间间距为五秒:
2022-09-02 14:38:36.800679
2022-09-02 14:38:41.801489

21、怎么理解装饰器

封闭:已实现的功能代码不应该被修改 开放:对现有功能的扩展开放

def outer(func):
def inner():
func()
return inner
@outer
def f1():
print('ok')

f1()

22、怎么理解局部变量与全局变量

全局变量:在一个python文件中定义的变量叫全局变量

局部变量:在函数内部定义的变量叫局部变量

在python文件中调用变量,全局变量优先与局部变量

在函数内部,局部变量优先于全局变量

23、Java的继承与Python的继承有什么区别

java是单继承,python是多继承

24、如果子类重写了父类的方法,那么实例化子类后,调用重写后的方法,调用的是子类的方法还是父类的方法

优先调用的是子类的方法

两个不同的数据放在不同的文件里面,怎么获取相同的数据和不同的数据

先把两个文件的数据放在两个不同的列表里,通过集合的交集,差集获取到相同数据和不同的数据

fa=open('1.txt','r',encoding='utf_8')
a=list(fa.read())
fa.close()

fb=open('2.txt','r',encoding='utf_8')
b=list(fb.read())
fb.close()

print(set(a)&set(b))
输出的结果就是相同的数据

对数据A进行过处理成数据B,怎么验证处理的数据对还是不对

通过zip打包循环

a=[2,4,6,3,2]
b=[6,2,7,9,22]

c=(zip(a,b))
print(list(c))
输出:
[(2, 6), (4, 2), (6, 7), (3, 9), (2, 22)]

字典和列表的区别

字典的无序的 通过key和value存储的

列表是有序的通过索引存储的

posted @ 2022-09-14 21:55  刘乐乐liu  阅读(94)  评论(0编辑  收藏  举报