#!/usr/bin/python
# -*- coding: UTF-8 -*-
from lib_001_decorator_log_funcname import decorator_log_funcname 
s1 = 'hello s1'
s2 = "hello s2"
s3 = '''
guyu
  conghua
    123
'''
@decorator_log_funcname
def _test_define():
#    print("\n_test_define")
    print(s1)
    print(s2)
    print(s3)   
@decorator_log_funcname
def _test_string_plus_string():
#    print("\n_test_string_plus_string")
    ss = s1 + " " + s2
    print(ss)
@decorator_log_funcname
def _test_string_cut():
#    print("\n_test_string_cut")
    ss = s1[0:3]
    print(ss)  
    ss = s1[2:4]
    print(ss)       
def _test_string_length():
    print("\n_test_string_length")  
    print(s1.__len__())    
    print(s3.__len__()) 
def _test_string_pos( ss, i ):
    print("\n_test_string_pos")  
    print(ss.find(i))
def _test_string_replace( ss, sub1, sub2 ):
    print("\n_test_string_replace") 
    ss.replace( sub1, sub2 )
    print(ss)
    print(s1) 
    ss = ss.replace( sub1, sub2 )
    print(ss)
    print(s1)     
def _func_string_insert( ss, pos, sub1 ):
    print("\n_func_string_insert") 
    l = list(ss)
    l.insert(pos, sub1)
    ss = ''.join(l)
    print(ss)
def _func_string_del( ss, sub1 ):
    print("\n_test_string_del") 
    ss = ss.replace( sub1, "" ) 
    print(ss)  
def _func_get_last_n_char( ss, n ):
    print("\n_func_get_last_n_char")    
    ll = ss.__len__()
    print( ss[ ll-n : ll ] )     
def _test():
    _test_define()
    _test_string_plus_string()
    _test_string_cut()
    _test_string_length()
    _test_string_pos(s1, 'llo')
    _test_string_replace(s1, 's1', 'xx')
    _func_get_last_n_char(s1, 2)
    _func_string_insert(s1, 1, 'xx')
    _func_string_del(s1,"el")
    
if __name__ == '__main__':
    _test()

python_test_0001_base_string的更多相关文章

随机推荐

  1. 关于异常处理的return

    无论try代码块中是否有异常,finally里的代码都会执行 当try和catch代码块中有return语句时,finally仍然会执行 如果try-catch-finally都有return语句,则 ...

  2. 学习ASP.NET Core Blazor编程系列二十六——登录(5)

    学习ASP.NET Core Blazor编程系列文章之目录 学习ASP.NET Core Blazor编程系列一--综述 学习ASP.NET Core Blazor编程系列二--第一个Blazor应 ...

  3. 合肥光源纵向震荡数据源相关PV

    中控室束测界面上加上了BCM部分,看下面截图,可以发现里面的两张二维图像内容还是蛮丰富的,我想其数据很值得大家研究研究,现把相关PV公布给大家,感兴趣的可以通过这两幅图的数据计算出更多的物理量,比如每 ...

  4. 深入理解JavaScript对象

    前言 在 JavaScript 中,对象是一种非常常见的数据类型,几乎每个程序员都会在日常工作中频繁地使用对象.在本篇文章中,我们将深入了解 JavaScript 对象的一些基本概念和一些高级概念,这 ...

  5. TCP/IP协议(3): Wi-Fi(IEEE 802.11) 协议 —— 构成无线局域网的基本协议

    TCP/IP协议(3): Wi-Fi(IEEE 802.11) 协议 -- 构成无线局域网的基本协议 关于 Wi-Fi(IEEE 802.11) 协议 关于 IEEE 802.11 IEEE 802. ...

  6. Openfoam Pstream类探索

    对于数值仿真而言,无论是商软或者开源并行计算都是非常重要的,而且想把自身数值仿真能力提升一个层次,必须对并行计算有很好的理解与应用 openfoam并行通信主要通过Pstream类完成 本篇文章进行说 ...

  7. 【GDKOI 2021提高组DAY2】抄写

    \(\text{Solution}\) \(dp\) 翻折就只需预处理回文中心 \(Manacher\) 预处理即可 \(Code\) #include<cstdio> #include& ...

  8. [SWPUCTF 2021 新生赛]jicao

    CTF web安全 阅读代码可知当传入一个post型的参数id与wllmNB相等并且传入一个get型的参数json: 但是这里有一个函数json_decode,上网搜索可知json_decode这个函 ...

  9. Linux下文件实时自动同步备份

    转载简书: https://www.jianshu.com/p/fc2f3ec661c0

  10. Docker安装部署Mysql8(以作数据持久化)

    1.创建容器并进行持久化处理 #拉取镜像 docker pull mysql:8.0.20 #启动镜像,用于拷贝配置文件到宿主机 docker run -p 3306:3306 --name mysq ...