美文网首页
每日总结-第二十一天-python

每日总结-第二十一天-python

作者: SamiraG | 来源:发表于2020-04-25 01:15 被阅读0次

题外

我咋每天这个点写东西...今天开会开到比较晚,小小原谅一下我自己==因为最近的项目,总结帖变成了python技巧学习贴...

找工作

今天聊了一下,感觉找工作还是要项目经验够才比较稳,特别是找研究型实验室的工作,加油呀,找个方向好好做点东西吧。然后顺便补基础...

讲课提纲

python安装包失败

转换下载源:
pip3 install -i https://pypi.douban.com/simple yourpackagename
国内主要下载源:

python 小技巧

  1. jupyter中光标移动至函数名右侧(或选中函数名),按住Shift + Tab键弹出帮助文本框。
  2. 按住Ctrl鼠标移动光标同时选中多处编辑位置,启动多行编辑。
  3. 使用any判断诸多条件是否至少有一个成立; 使用all函数判断条件全部成立
if any([a <67, b < 89]):
  pass
  1. 使用enumerate函数生成下标和元素对。
s = ['a', 'b']
for i, a in enumerate(s):
  pass
  1. 显示循环进度
  • print下标后设置不换行并使用‘\r’回车到行首以避免输出刷屏。
import time
i,n = 0, 100
for i in range(n):
    time.sleep(0.1)
    if (i+1)%10 == 0: print(i+1, end='\r')
  • 使用progress函数
import sys, time
def progress_bar(num, total):
    rate = float(num) / total
    ratenum = int(100*rate)
    r = '\r[{}{}]{}%'.format('*'*ratenum, ' '*(100-ratenum), ratenum)
    sys.stdout.write(r)
    sys.stdout.flush()
i , n = 0, 100
for i in range(n):
    time.sleep(0.1)
    progress_bar(i+1, n)
  1. 使用lambda匿名函数实现简单的函数
L = [1,2,3,"abc", 1.23]
total = sum(filter(lambda x: isinstance(x, (int, float)), L)) # 数字之和
print(total)
  1. 使用yield生成器收集系列值
def fib(n):
    a,b,i = 1,1,1
    while i <= n:
        i = i + 1
        yield a
        a, b = b, a+b
print(list(fib(10)))
  1. 使用python修饰器
from functools import wraps
 
class logit(object):
    def __init__(self, logfile='out.log'):
        self.logfile = logfile
 
    def __call__(self, func):
        @wraps(func)
        def wrapped_function(*args, **kwargs):
            log_string = func.__name__ + " was called"
            print(log_string)
            # 打开logfile并写入
            with open(self.logfile, 'a') as opened_file:
                # 现在将日志打到指定的文件
                opened_file.write(log_string + '\n')
            # 现在,发送一个通知
            self.notify()
            return func(*args, **kwargs)
        return wrapped_function
 
    def notify(self):
        # logit只打日志,不做别的
        print("helloworld")

@logit()
def my_func():
    print("mu_func")

my_func()
# my_func was called
# helloworld
# mu_func

another way

from functools import wraps
 
def logit(logfile='out.log'):
    def logging_decorator(func):
        @wraps(func)
        def wrapped_function(*args, **kwargs):
            log_string = func.__name__ + " was called"
            print(log_string)
            # 打开logfile,并写入内容
            with open(logfile, 'a') as opened_file:
                # 现在将日志打到指定的logfile
                opened_file.write(log_string + '\n')
            return func(*args, **kwargs)
        return wrapped_function
    return logging_decorator
 
@logit()
def myfunc1():
    pass
 
myfunc1()
# Output: myfunc1 was called
# 现在一个叫做 out.log 的文件出现了,里面的内容就是上面的字符串
 
@logit(logfile='func2.log')
def myfunc2():
    pass
 
myfunc2()
# Output: myfunc2 was called
# 现在一个叫做 func2.log 的文件出现了,里面的内容就是上面的字符串

python ctype库

使用ctype访问c代码

from ctypes import *
 
def convert(s):
    i = int(s, 16)                   # convert from hex to a Python int
    cp = pointer(c_int(i))           # make this into a c integer
    fp = cast(cp, POINTER(c_float))  # cast the int pointer to a float pointer
    return fp.contents.value         # dereference the pointer, get the float
 
print convert("41973333")    # returns 1.88999996185302734375E1

python struct库

https://docs.python.org/zh-cn/3/library/struct.html?highlight=struct

相关文章

  • 每日总结-第二十一天-python

    题外 我咋每天这个点写东西...今天开会开到比较晚,小小原谅一下我自己==因为最近的项目,总结帖变成了python...

  • 2018-03-10

    Python第二周学习总结 导读:这是python学习的第二周,在第二周,学习了大量的python基础,其中有字符...

  • 孤荷凌寒自学python第二十一天初识python的类

    孤荷凌寒自学python第二十一天初识python的类 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 类...

  • 20220619日更第170天

    减重+学习第二十一天。第一个阶段结束,显然,效果不理想;总结一下经验和教训,准备开启第二个二十一天。 今天是父亲节...

  • 2017-12-7

    嗨小姐每日复盘第二十一天By趙 每日目标: 1.晨练健身锻炼1小时 2.学习职业相关与心理学 完成情况: 1.晨练...

  • 持续写作一年多可以给人带来什么样的好处?

    【21天发现优点计划】#第二十一天(2018.8.24) 今天是参与活动的最后一天,应该好好的做个总结,总结一下持...

  • 2020-05-15复盘|写下去

    坚持每日复盘 日更第二十天 【日习】 ●python数据类型---列表 【技术贴】python数据类型之列表 ●写...

  • 打卡遇到的那些事儿(之三)—别样的21天,她收获了什么?

    打卡21天,她收获了什么?她在21天写下了她的总结: 今天是我参加冬令营打卡的第二十一天,在这二十一天里,每天进行...

  • 《坚持是一件最考验人的事》

    今天是我挑战每日更新的第二十一天,很多都说二十一天可以养成好习惯。我今天在脑子里搜索了很久却不知道写什么主题。最后...

  • 从今天开始不再日更了

    今天是我日更的第二十一天。 我选择以后都不再强制自己每日更文。我不像那些公众号大咖一样,能做到每日更文,毕竟他们有...

网友评论

      本文标题:每日总结-第二十一天-python

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