python学习

文章介绍了Python如何调用其他文件的类和函数,包括import的使用,如相对导入和包导入。同时,讲解了处理json数据的常见操作,如加载和异常处理。此外,还展示了字典遍历和基于特定键进行排序的方法。
摘要由CSDN通过智能技术生成

1、
python调用其他文件的类
python 调用当前路径下文件夹里的类

python 调用其他文件的类和函数以及避坑指南
https://blog.csdn.net/Electrical_IT/article/details/114909308

python调用其他文件函数或类
https://blog.csdn.net/qq_36134318/article/details/80640667

python调用其他文件的类和函数
https://www.cnblogs.com/xiugeng/p/8681520.html

2、python import

包相对导入
https://docs.python.org/zh-cn/3/reference/import.html#package-relative-imports:~:text=5.7.-,%E5%8C%85%E7%9B%B8%E5%AF%B9%E5%AF%BC%E5%85%A5,-%C2%B6

python 导入同级目录文件、上级目录文件以及下级目录数据集和模块包
https://www.cnblogs.com/ipersevere/p/10916803.html#:~:text=%E5%88%9B%E5%BB%BA%E7%A9%BA%E7%9A%84-,init.py%E6%96%87%E4%BB%B6,-_config.py%0Anetworks

https://www.cnblogs.com/ipersevere/p/10916803.html#:~:text=%EF%BC%882%EF%BC%89-,%E4%BD%BF%E7%94%A8sys%E5%BA%93%E6%B7%BB%E5%8A%A0%E8%B7%AF%E5%BE%84,-import%20sys%0Asys

Python中import的用法
https://zhuanlan.zhihu.com/p/63143493

3、

a = "{}"
print("direct a={}".format(a))
if a:
  print("a={}".format(a))
b=json.loads(a)
if b:
  print("b={}".format(b))
print("direct b={}, type={}".format(b,type(b)))
data = "{\"nih\":}"
print(data)
try:
  data = json.loads(data)
except Exception as e:
  data = {}
  print("json loads failed: {}, {}".format(e, traceback.format_exc()))
print(data, type(data))
direct a={}
a={}
direct b={}, type=<class 'dict'>
{"nih":}
json loads failed: expected value at line 1 column 8: line 1 column 1 (char 0), Traceback (most recent call last):
  File "parser_array.py", line 51, in <module>
    data = json.loads(data)
orjson.JSONDecodeError: expected value at line 1 column 8: line 1 column 1 (char 0)

{} <class 'dict'>

4、

# cat main.py
from out1 import printSelf as printOfOut1
from in_file.in1 import printSelf as printOfIn1
print("printOfOut1: ")
printOfOut1()
print("printOfIn1:")
printOfIn1()
# print("printOfOut1: ".format(printOfOut1()))
# print("printOfIn1:   ".format(printOfIn1()))

# cat out1.py
def printSelf():
  print("in out1.py")
# cat in_file/in1.py
def printSelf():
  print("in in1.py")

# ll in_file/
total 4
-rw-r--r-- 1 root root 38 Mar 15 15:04 in1.py
drwxr-xr-x 2 root root 40 Mar 15 15:09 __pycache__
# ll
total 8
drwxr-xr-x 3 root root  51 Mar 15 15:09 in_file
-rw-r--r-- 1 root root 257 Mar 15 15:14 main.py
-rw-r--r-- 1 root root  39 Mar 15 15:05 out1.py
drwxr-xr-x 2 root root  41 Mar 15 15:09 __pycache__
# python main.py
printOfOut1:
in out1.py
printOfIn1:
in in1.py

5、

student_tuples = [
    ('john', 'A', 15),
    ('jane', 'B', 12),
    ('dave', 'B', 10),
]
sorted(student_tuples, key=lambda student: student[2])   # sort by age
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
# The operator module functions allow multiple levels of sorting. For example, to sort by grade then by age:

>>>
sorted(student_tuples, key=itemgetter(1,2))
[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]

https://docs.python.org/3/howto/sorting.html
6、python字典遍历的几种方法
(1)遍历key值

>>> dic
{'a': '1', 'b': '2', 'c': '3'}
>>> for key in dic:
print(key+':'+dic[key])

a:1
b:2
c:3

>>> for key in dic.keys():
print(key+':'+dic[key])

a:1
b:2
c:3
在使用上,for key in a和 for key in a.keys():完全等价。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值