在Python中向文件名末尾添加一个连续的字母

时间:2015-06-10 16:19:21

标签: python

我正在尝试编写一个脚本来命名一个文件,其中包含用户的用户名,日期,然后是唯一标识符。目标是使用户网络在共享数据库中以连续顺序以标准化格式为它们生成文件名。我能够生成用户名和日期,但是在分配标识符时遇到问题。我在想一个顺序的ascii_lowercase,但显然我不能有重复。

示例:用户doug在6月1日保存3个文件编辑,其文件应保存为doug060115adoug060115bdoug060115c。用户doug在6月2日再保存1个文件编辑,他的文件现在应保存为doug060215a

因此,文件名末尾的唯一标识符应从a开始,如果采用,则转到b,然后是c,依此类推。如果用户名或日期更改,唯一标识符应从a。

重新开始

2 个答案:

答案 0 :(得分:1)

您可以使用ord的偏移和一些切片

def incrementName(s):
    return s[:-1] + chr(ord(s[-1]) + 1)

>>> incrementName('doug060115b')
'doug060115c'

点击z后确定要执行的操作(如果您预计会发生此情况)

答案 1 :(得分:0)

我建议在包含列的表中执行此操作:

user_id, user, date, sequential_letter

如果今天用户添加了更多文件,您将检查正在使用的字母并分配下一个字母。如果今天的日期发生变化,您将重新开始此序列。顺序数字可能更适合此目的。您可以使用SQLite。 Python处理得非常好。 http://zetcode.com/db/sqlitepythontutorial/

相关问题