所以我有一个包含完整信用卡号的csv文件.我们不需要完整的号码,所以我正在编写一个快速脚本来解析csv并用掩码表示替换cc号.(除了最后四个之外所有*).我是python的新手,并将其破解,并且它可以工作,但为了学习我想知道它是否可以更轻松地完成.
假设"str"将是一个完整的信用卡号码.但是为了我的例子,我只使用字符串"CREDITCARDNUMBER".
str = "CREDITCARDNUMBER";
strlength = len(str)
masked = strlength - 4
slimstr = str[masked:]
print "*" * masked + slimstr
Run Code Online (Sandbox Code Playgroud)
输出正是我想要的
************MBER
Run Code Online (Sandbox Code Playgroud)
但我相信有更优雅的解决方案.:) 谢谢!
我正在尝试解析电子邮件地址列表以删除用户名和"@"符号,只留下域名.
示例:blahblah@gmail.com所需输出:gmail.com
我用以下代码完成了这个:
for row in cr:
emailaddy = row[0]
(emailuser, domain) = row[0].split('@')
print domain
Run Code Online (Sandbox Code Playgroud)
但我的问题是当我遇到格式不正确的电子邮件地址.例如,如果该行包含"aaaaaaaaa"(而不是有效的电子邮件地址),则程序会因错误而崩溃
(emailuser, domain) = row[0].split('@')
ValueError: need more than 1 value to unpack.
Run Code Online (Sandbox Code Playgroud)
(如你所期望的),而不是检查所有的电子邮件地址的有效性,我宁愿只是没有更新抢域,并移动到下一个记录.如何正确处理此错误并继续前进?
所以对于以下列表:
blahblah@gmail.com
mmymymy@hotmail.com
youououou
nonononon@yahoo.com
Run Code Online (Sandbox Code Playgroud)
我希望输出为:
gmail.com
hotmail.com
yahoo.com
Run Code Online (Sandbox Code Playgroud)
谢谢!
我正在尝试将字典的内容写入(并稍后读入)到ConfigParser,我相信我正在根据文档正确地进行,但似乎无法使其工作.有人可以帮忙吗?
import ConfigParser
parser = ConfigParser.ConfigParser()
parser['User_Info'] = {"User1-votes":"36","User1-gamestart":"13232323","User2-votes":"36","User2-gamestart":"234234234","User3-votes":"36","User3-gamestart":"13232323"}
Traceback (most recent call last): File "<stdin>", line 1, in
<module> AttributeError: ConfigParser instance has no attribute '__setitem__'
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是有一个我可以更新的字典,并在最后写入配置文件,所以它看起来像:
[User_Info]
User1-gamestart = 13232323
User3-votes = 36
User2-votes = 36
User1-votes = 36
User2-gamestart = 234234234
User3-gamestart = 13232323
Run Code Online (Sandbox Code Playgroud) 我有一个文件,该文件包含超过400万行,我希望逐行读取它们,并对第一个“列”数据执行操作。可能有重复的数据,我想确保只执行一次这些操作,并且能够重新启动程序并从上次中断的地方开始。
我的解决方案是解析该行,将值存储到列表中,然后“如果x不在列表中”执行操作,然后在程序死/停止/被杀死时将该列表存储为泡菜。
但是,脚本运行了几个小时后会出现段错误,我认为这是因为由于在checkedFile列表中存储了大量MD5和,因此我已经烧光了所有RAM。
因为文件太大(超过400万个条目),所以我需要快速查找的东西,希望有一个简单的解决方案。谢谢!
数据如下所示:6e5f6c90e6bf31c31283afb8dca93da8 | mouse.gif | 10102017
我当前的代码如下所示:
checkedFile = []
def readline(inFile):
print("Opening file: %s\n" % inFile)
try:
with open(inFile, "r") as inputFile:
for line in inputFile: # read in file line by line
fileHash, garbage = line.split("|",1)
if fileHash not in checkedFile:
checkedFile.append(fileHash)
checkit(fileHash) #
Run Code Online (Sandbox Code Playgroud)