Flask源码解析:字符串方法endswith与os.path.splittext()

1、字符串方法endswith

  endswith方法:

def endswith(self, suffix, start=None, end=None): # real signature unknown; restored from __doc__
	"""
	S.endswith(suffix[, start[, end]]) -> bool

	Return True if S ends with the specified suffix, False otherwise.
	With optional start, test S beginning at that position.
	With optional end, stop comparing S at that position.
	suffix can also be a tuple of strings to try.
	"""
	return False

  其中suffix支持字符串构成的元组(tuple)。

filename = "1.html"
filename = "1.xml"
# def endswith(self, suffix, start=None, end=None):
# suffix can also be a tuple of strings to try.
r = filename.endswith((‘.html‘, ‘.htm‘, ‘.xml‘, ‘.xhtml‘))
print(r)

  输出结果为:False

2、os.path.splittext

import os
fn = "F:/2018/python/review/project/Flask_01/__get__与__set__.py"

# os.path.splitext
# f: __get__与__set__.py
f = os.path.basename(fn)
print(f)
# r: (‘__get__与__set__‘, ‘.py‘)
r = os.path.splitext(f)
print(r)

# os.path.split
dirname,filename=os.path.split(‘/home/ubuntu/python_coding/split_func/split_function.py‘)
# dirname: /home/ubuntu/python_coding/split_func
# filename: split_function.py
print(dirname, filename)

  os.path.splittext():将文件名和扩展名分开,返回由文件名和扩展名构成的元组

  os.path.split():返回文件的路径和文件名构成的元组

  

  

原文地址:https://www.cnblogs.com/bad-robot/p/10062284.html

时间: 2024-11-10 06:32:30

Flask源码解析:字符串方法endswith与os.path.splittext()的相关文章

Flask源码解析(理解working outside of application context)

from flask import Flask, current_app app = Flask(__name__) a = current_app d = current_app.config['DEBUG'] 首先从这段代码看起,代码运行的结果就是 RuntimeError: Working outside of application context. 此时本地代理未绑定,不是我们想要的核心flask对象.代码报错. current_app = LocalProxy(_find_app)

Redis源码解析——字符串map

本文介绍的是Redis中Zipmap的原理和实现.(转载请指明出于breaksoftware的csdn博客) 基础结构 Zipmap是为了实现保存Pair(String,String)数据的结构,该结构包含一个头信息.一系列字符串对(之后把一个"字符串对"称为一个"元素"(ELE))和一个尾标记.用图形表示该结构就是: Redis源码中并没有使用结构体来表达该结构.因为这个结构在内存中是连续的,而除了HEAD和红色背景的尾标记END(恒定是0xFF)是固定的8位,其

Spring5源码解析2-register方法注册配置类

接上回已经讲完了this()方法,现在来看register(annotatedClasses);方法. // new AnnotationConfigApplicationContext(AppConfig.class); 源码 public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) { //调用默认无参构造器,里面有一大堆初始化逻辑 this(); //把传入的Class进行注册,Class既可以有@Co

flask 源码解析:上下文(一)

文章出处  https://www.cnblogs.com/jackchengcc/archive/2018/11/29/10025949.html 一:什么是上下文 每一段程序都有很多外部变量.只有像Add这种简单的函数才是没有外部变量的.一旦你的一段程序有了外部变量,这段程序就不完整,不能独立运行.你为了使他们运行,就要给所有的外部变量一个一个写一些值进去.这些值的集合就叫上下文. 在 flask 中,视图函数需要知道它执行情况的请求信息(请求的 url,参数,方法等)以及应用信息(应用中初

jquery源码解析:jQuery工具方法when详解

我们先来看when方法是如何使用的: var cb = $.when();   //when方法也是返回一个延迟对象,源码是return deferred.promise();返回的延迟对象不能修改状态 $.Deferred()也是返回一个延迟对象,那么它们的区别是什么呢?$.Deferred()只能针对一个延迟对象做成功,失败,进行中的操作,而$.when()可以针对多个延迟对象做以上操作.举个例子: function a(){ var cb = $.Deferred(); cb.resolv

jquery源码解析:jQuery工具方法Callbacks详解

我们首先来讲下Callbacks是如何使用的:第一个例子 function a(){} function b(){} var cb = $.Callbacks(); cb.add(a); cb.add(b); cb.fire();      //就会先执行a方法,再执行b方法 上面大概的意思是:add方法,就是把方法添加到数组list中,每执行一次,就添加一个方法.而fire方法,就是把list数组中的方法按顺序执行. 使用场景:第二个例子 function a(n){ } (function(

十七.jQuery源码解析之入口方法Sizzle(1)

函数Sizzle(selector,context,results,seed)用于查找与选择器表达式selector匹配的元素集合.该函数是选择器引擎的入口. 函数Sizzle执行的6个关键步骤如下: 1.解析选择器表达式,解析出块表达式和关系符. 2.如果存在位置伪类,则从左向右查找: a.查找第一个块表达式匹配的元素集合,得到第一个上下文元素集合. b.遍历剩余的块表达式和块间关系符,不断缩小上下文元素集合. 3.否则从右向左查找: a.查找最后一个块表达式匹配的元素集合,得到候选集,映射集

jQuery方法源码解析--jQuery($)方法(一)

jQuery方法源码解析--jQuery($)方法 注: 1.本文分析的代码为jQuery.1.11.1版本,在官网上下载未压缩版即可 2.转载请注明出处 jQuery方法: 这个方法大家都不陌生,在使用过程中,它还有另外一个名字,美元符号:$,$(...)其实就是jQuery(...); 它有很多种用法,通常都返回一个jquery对象,也可以作为$(document).ready(...);的简写形式,分析之前先看一下jQuery都有什么用法. 1.jQuery( selector [, co

Java方法总结与源码解析(未完待续)

使用StringTokenizer去掉字符串中的空格 public class StringTo { public static void main(String[] args){ String text = " We are students "; System.out.println("源字符串是:"); System.out.println(text); System.out.println(text.trim()); StringTokenizer st =