python如何删除字符串中指定位置的字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何删除字符串中指定位置的字符相关的知识,希望对你有一定的参考价值。

比如字符串s="abcabcabc",如何删除第四个字符a,不能使用strip,因为strip/replace等函数会把字符串中的a全部删掉,我要指定这个位置的删除,是不是除了转list没办法了呢?

#!/bin/env pythonimport shutil, sys, osdarray = [  "Entering directory",  "In function ",  "Leaving directory",  "__NR_SYSCALL_BASE",  "arm-hisiv100-linux-ar ",  "arm-hisiv100-linux-gcc ",  "but argument is of type",  "dereferencing type-punned pointer will break strict-aliasing rules",  "differ in signedness",  "does break strict-aliasing rules",  "embedded '\\\\0' in format",  "excess elements in array initializer",  "implicit declaration of",  "make -C ",  " rm -f",  "this is the location of the previous definition",  "warning: multi-line comment"]def isInArray (array, line):  for item in array:    if item in line:      return True  return Falseif __name__ == '__main__':  argv = sys.argv  argc = len(argv)  if argc < 2:    print "Usage: %s <file>" %(os.path.basename(argv[0]))    exit()  fname = argv[1]  fresult = fname + ".result"  with open(fname, 'r') as f:    with open(fresult, 'w') as g:      for line in f.readlines():        if not isInArray(darray, line):          g.write(line)

关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

参考技术A

不用转list。python可以很方便地操作字符串。

s = s[:3] + s[4:]

本回答被提问者采纳

JAVA 删除字符串中指定的字符

参考技术A

方法一:

/**

* @param s  要操作的字符串

* @param string  要删除的字符

* @param i  删除第几个

* @return

*/

public String remove(String s,String string,int i)

if(i==1)

int j=s.indexOf(string);

s=s.substring(0, j)+s.substring(j+1);

i--;

return s;

else

int j=s.indexOf(string);

i--;

return s.substring(0, j+1)+remove(s.substring(j+1), string, i);

方法二:

public static void main(String[] args)

String param = "abcdabcd";

int[] array = 1, 3, 5;//你想要替换字符串的位置

System.out.println(deleteAll(param, array));

public static String deleteAll(String source, int arg[])

char[] array = source.toCharArray();

String[] arrayStr = new String[array.length];

for (int i = 0; i < array.length; i++)

arrayStr[i] = String.valueOf(array[i]);

for (int key : arg)

arrayStr[key - 1] = "";

StringBuffer strBuf = new StringBuffer();

for (String string : arrayStr)

if (!"".equals(string))

strBuf.append(string);

return strBuf.toString();

字符串主要用于编程,概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似 字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[0]=“a”,s[9]="j",而字符串的 零位正是它的长度,如s[0]=10(※上述功能Ansistring没有。),这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。

以上是关于python如何删除字符串中指定位置的字符的主要内容,如果未能解决你的问题,请参考以下文章

JAVA 删除字符串中指定的字符

JAVA 删除字符串中指定的字符

删除数组中指定的某个对象

[两个指针]删除字符串中指定的字符

sql 删去记录中指定字符开头的字符串

c#如何把字符串中的指定字符删除