6.61迭代器的应用

for、list 和 tuple 接收可迭代对象:

①取自身的迭代器;

②通过next取通过迭代生成的值;

并非是类型转换 (转换列表/元组)

print('---------方法一:列表插入----------')  # 占用列表空间保存数据
nums = list()
a = 0
b = 1
i = 0


while i < 10:
    nums.append(a)
    a, b = b, a+b
    i += 1

for num in nums:
    print(num)


print('---------方法二:迭代器----------')  # 只占用代码空间
class Fibonacci(object):
    def __init__(self, all_num):
        self.all_num = all_num
        self.current_num = 0
        self.a = 0
        self.b = 1

    def __iter__(self):  # 迭代对象
        return self

    def __next__(self):  # 迭代器
        if self.current_num < self.all_num:
            ret = self.a
            self.a , self.b = self.b, self.a + self.b
            self.current_num += 1

            return  ret
        else:
            raise StopIteration


fibo = Fibonacci(10)

for num in nums:
    print(num)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
seacms v6.61是一款开源的内容管理系统,经过测试发现存在一些安全漏洞。这些漏洞可能会被黑客利用,对网站的安全性造成威胁。下面就seacms v6.61漏洞进行具体分析。 首先,seacms v6.61存在SQL注入漏洞。黑客可以通过构造恶意的SQL语句,绕过系统的安全验证,获取到数据库中的敏感信息。这可能包括用户名、密码等用户的个人信息。为了解决这个问题,网站管理员需要对数据库查询语句进行过滤和验证,确保用户输入的内容不会被当作SQL命令执行。 其次,seacms v6.61还存在跨站脚本攻击漏洞。如果网站没有对用户输入的数据进行过滤和验证,黑客可以插入恶意的脚本代码,从而在用户浏览网页时执行非法的操作。这可能导致用户的个人信息被窃取,或者被重定向到恶意网站。网站管理员应该对用户输入的数据进行过滤和转义,确保不会执行任何可能的危险操作。 此外,seacms v6.61还存在文件上传漏洞。黑客可以利用这个漏洞,上传恶意文件到网站服务器上,进而执行任意的系统命令。为了解决这个问题,网站管理员应该限制上传文件的类型和大小,并对用户上传的文件进行病毒扫描和安全验证。 总之,seacms v6.61存在多个安全漏洞,可能会给网站及其用户带来潜在的风险。网站管理员应该密切关注官方的安全更新,及时修补漏洞,加强对系统的安全防护措施。另外,用户在使用seacms v6.61时也应该注意保护自己的个人信息,避免受到黑客攻击的威胁。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值