美文网首页
python 小知识点

python 小知识点

作者: 懒生活 | 来源:发表于2022-12-19 14:18 被阅读0次

50个基本的python命令

01 导入模块

import XXXXX
import XXXXX as xm
from XXXXX import * 

上面三个常用的导入句式, 前两句是把模块连带命名空间导入. 要访问模块的时候,还需要使用模块名称. from句式可以理解为把模块里面的相关代码直接拷贝到当前文件中了,此时导入的模块内部函数,跟本文件内的内部函数一样直接调用.

02 reload 重新加载模块

这个命令的使用场景如下, 在交互界面下, 你之前已经加载过某个模块了import XXXXXX, 因为某种原因你使用外部编译器修改调整了这个模块XXXXXX, 但在交互界面下,你是没有办法继续通过命令import XXXXXX来重新加载你修改的内容的. 此时需要XXXXXX.reload(). 模块里面的所有变量赋值因为reload会被更新. 但是如果你修改的内容包括删除一个变量, 那么即使reload模块,这个变量因为之前存在,还会继续存在

03 pip install命令

04 执行脚本exec("python expressions")

[[python3] exec()函数 - 简书 (jianshu.com)](https://www.jianshu.com/p/5caf0415214b)

05 ipython

06 eval()函数

07 map函数

def addition(n):
    return n + n
numbers = (1, 2, 3, 4)
result = map(addition, numbers)
print(list(result))

map函数返回的是map对象,可以通过list转换成列表.

08 filter函数

filter函数和map函数都是对原有的序列应用规则,产生新的序列. 入参的顺序都是规则+操作序列

09 staticmethod

类似于c++类里面定义的静态函数,这个函数的调用不需要类的实例化.

class Maths():
    @staticmethod
    def addNum(num1, num2):
        return num1 + num2
# Driver's code
if __name__ == "__main__":
    # Calling method of class
    # without creating instance
    res = Maths.addNum(1, 2)
    print("The result is", res)

10 iter()函数

首先要弄明白可迭代和迭代器的含义. 迭代器是一个可以记住已遍历位置的对象, 迭代器只往前, 遍历到达末尾后会抛出异常. 对于可迭代的容器使用 for xx in container: 语句时, 本质上for语句会对container作用iter()函数,生成这个容器的迭代器,然后内部使用next依次遍历,并且检测到异常后退出遍历. iter函数最有用的用法如下

with open("bigFile.txt") as fp:
    for line in iter(fp.readline, ''):
        process_line(line)

对于一个超大的文件,如果你调用lines = fp.readlines(), 那么这时候所有的行都会存放在lines列表中,这样对内存的消耗是比较大的.但是如果使用for line in iter(fp.readline,''):语句,那么for循环中,每次都会调用一次fp.readline. 得到值赋给line, 一直循环直到readline读取到空字符为止. 这样的惰性计算处理,使得内存的使用得到了优化. 而类似下面的应用,感觉就没有什么意义了:

a = [1,2,3,4,5]
for i in iter(a):
    print(i)

每次执行iter(a)的时候,会读取a中的一个元素,并赋值给i. 此时所有的数据已经在a容器里面,改占用的内存已经被占用了.不如下面的写法来得直接

a = [1,2,3,4,5]
for i in a:
    print(i)

11 sorted(listA)函数

a=[1,2,5,3,4]
print(sorted(a))

注意sorted默认从小到大进行排序, 而且sorted不是在入参a上进行排序,而是生成一个新的列表. 旧的列表a是没有变化的.

12 yield

带有yield的函数定义,返回的是一个迭代器. yield相当于return, 下一次迭代的时候,会从上一个yield的后一行进行执行.

def testYield():
    yield 1
    yield 2
    yield 3
    yield 4
    yield 5
res=testYield()
for item in res:
    print(item)

13 shelving data 序列化任意对象

可以通过shelving把任意python对象序列化存储到文件中,可以认为shelve类似于一个key-value数据库.
flag='c'表示如果数据库文件不在,就创建.

import shelve
d = shelve.open('my.db', flag = 'c')
d['abc'] =['a','b']
d.close()

os.environ

os.environ可以设定和查询环境变量
设定环境变量如下['CUDA_VISIBLE_DEVICES'] = "0,1"
查询环境变量如下
os.environ.get('CUDA_VISIBLE_DEVICES')

name的作用

一个py文件会绑定一个自己的name变量。如果这个py文件是被直接运行的,这个变量会被解释器赋值为“main”,如果是被import进来的,会被赋值为文件名。

遍历出说明满足条件的目录

f = glob.glob(r"/home//.py")

快捷的获取一个全路径下的文件名称

os.path.basename("/home/test/a.txt")
可以直接得到a.txt 如果路径是纯文件夹,没有文件名,那返回的是空。

python中的变量实质

(https://blog.csdn.net/qq_37891604/article/details/124528827)

相关文章

  • 知识点

    本篇文章主要总结一些 python 的小知识点----- 来自 《流畅的 Python》 一书 in 和 for ...

  • python中的奇技淫巧--(新手项)

    长期更新Python中的小技巧和一些知识点,面向新手,很多特性基于python3.x Python所应该遵循的代码...

  • python小知识点

    前言: 积累知识没有尽头! ORM操作: 在ORM操作数据库的时候应当尽量减少对数据库的查询,在一次查询中把数...

  • python小知识点

    python小知识点 传递元组 一个函数中返回两个不同的值 案例: >>> def get_error_deta...

  • Python小知识点

    Python的两种引入机制 Python 提供了二种引入机制: 1.relative import2.absolu...

  • Python _小知识点

    1.输出变量的两个方法 2.Python字符串拼接的6种方法 1.+ 2.逗号第二种比较特殊,使用逗号连接两个字符...

  • python 小知识点

    50个基本的python命令 01 导入模块 上面三个常用的导入句式, 前两句是把模块连带命名空间导入. 要访问模...

  • 小猿圈Python两大环境管理神器pyenv和virtualen

    最近学习Python有点多,特别是一些关于Python的问题也随之而来了,今天小猿圈Python讲师就总结些知识点...

  • 小猿圈Python开发如何判断jpeg图片完整性示例

    Python作为人工智能的开发语言,也是很多人学习的方向,小猿圈Python讲师每天分享一个Python知识点,希...

  • python全栈周末班20180728

    教学计划: 一、python知识点 教学目标:参考廖雪峰的python教程,带大家过一遍python的常用知识点,...

网友评论

      本文标题:python 小知识点

      本文链接:https://www.haomeiwen.com/subject/blqufdtx.html