社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python在工作中应用实例及字符串操作

Python初级入门到精通 • 6 月前 • 242 次点击  

批量删除和复制文件

1.批量删除文件

删除原始文件夹下的pdf

指令os.remove(文件)

import os

import re

#首先定义规则,如我们需要把所有的pdf文件

pattern=re.compile(r'.+.pdf')

for root ,dirs,files in os.walk(r'C:UsersShineionDesktop新建文件夹'):

for name in files:

file_path=os.path.join(root,name)#包含路径的文件

print(file_path)

matching=pattern.search(file_path)#匹配pdf

if matching:

os.remove(file_path)

print('删除成功')


1.批量复制文件

算例:我们将原始文件夹下的PDF复制到新的文件夹:D:测试1

首先 D:测试1 ,需要手动新建

import os

import re

#首先定义规则,如我们需要把所有的pdf文件

pattern=re.compile(r'.+.pdf')

for root ,dirs,files in os.walk(r'C:UsersShineionDesktop新建文件夹'):

for name in files:

file_path=os.path.join(root,name)#包含路径的文件

print(file_path)

matching=pattern.search(file_path)#匹配pdf

if matching:

command_line='copy %s D:测试1' % file_path.replace('/','')

os.system(command_line)

print('复制成功')

os.system(command_line)调用cmd来执行复制文件。

试过几次后,发现有时复制会失败,失败的文件名含有字母。全字母可以。

字符串连接与整数和浮动一样,Python中的字符串可以使用一个+号连接起来


连接字符串时,不管他们是否已经与单或双引号。


>>> "西红柿" + '鸡蛋'


'西红柿鸡蛋'


>>> print("第1个字符串" + ", " + "第2个字符串")


第一个字符串, 第二个字符串


'Hello world'


字符串与其它类型连接


即使字符串包含数字,它们仍然是作为字符串而不是数字添加的。在数字中添加一个字符串会产生一个错误,因为尽管它们看起来很相似,但它们是两个不同的概念。


>>> "4" + "4"


'44'


>>> 5 + '8' + 9 + '14'


TypeError: unsupported operand type(s) for +: 'int' and 'str'


阅读错误信息是程序员一个良好的习惯,以下是翻译(可以跳过阅读,不需要掌握的)


类型错误:不支持 ’整数‘和’字符串‘两种类型操作

typeError 类型错误

unsupported 不支持

operand  操作

type 类型

int 整数

str 字符串


 以下哪一行代码产生错误?


A"5" + 'leg'


B 6+ 8


C "olne" + "20"


D '7' + 16


字符串操作字符串也可以用整数相乘。这会让字符串重复。字符串和整数的顺序无关紧要,字符串不能由其他字符串相乘。字符串也不能用浮点数相乘,即使浮点数是整数。


>>> print("spams" * 2)


spamsspams


>>> 5 * '2'


'22222'


>>> '19' * '97'


TypeError: can't multiply sequence by non-int of type 'str'


# 类型错误:字符串不能和非整数类型相乘


>>> 'thonisfun' * 8.0


TypeError: can't multiply sequence by non-int of type 'float'


# 类型错误:浮点数不能和非整数类型相乘



填空 这个代码的输出是什么?


>>> print(5 * '7')





关注公众号,每天可以领红包


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/190956