吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1868|回复: 10
收起左侧

[Python 转载] 小白初习python分析理解for range以及and的使用,老鸟掠过……

[复制链接]
世界上只有dog雄 发表于 2019-12-12 21:39
本帖最后由 世界上只有dog雄 于 2019-12-13 13:02 编辑

先上代码:#这个代码目的是随机生成1-4之间的三位数,好像暴力破解能用上!
[Python] 纯文本查看 复制代码
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if( i != k ) and (i != j) and (j != k):
                print i,j,k


先看前三句(都类似)
[Python] 纯文本查看 复制代码
for i in range(1,5)

意思是:利用range关键字生成了(1-4)不包含的5的三位数字。然后通过for循环传递给(迭代)i     #这样解释不知道准不准确

第四句主要是if和and的使用
[Python] 纯文本查看 复制代码
if( i != k ) and (i != j) and (j != k):

让if来判断,i,k,j之间互相都不相等。以and的“且”也就是(i !=k )并且( i !=j )并且( j != k) 需要这三个条件都要成立才为真。


我感觉作为小白,这里的and的使用才是难点!

我们回顾and的知识点:

1、两边的表达式都为True的时候结果才为True。

2、任意一边为False的时候结果都为False

3、两边的表达式都为False,那肯定结果也是False



@bester  谢谢补充!
把and 翻译成中文的 “并且”
把or 翻译成中文的“或者”

"并且"理解成 所有的条件都要成立
"或者"理解成,只要其中一个条件成立


@wsleocn 谢谢补充高级写法,不过看不懂
[Python] 纯文本查看 复制代码
import itertools
mylist = itertools.permutations('1234',3)
for i in mylist:
    print(i)

以下是知识点:








so我们得出结论:
得出的结果就是这三个表达式之间都不想等的时候条件才为True,也就是为真的时候if下print(
i,j,k)才会执行,为假的时候就不执行。

然后执行结果为:
[Python] 纯文本查看 复制代码
1 2 3
1 2 4
1 3 2
1 3 4
1 4 2
1 4 3
2 1 3
2 1 4
2 3 1
2 3 4
2 4 1
2 4 3
3 1 2
3 1 4
3 2 1
3 2 4
3 4 1
3 4 2
4 1 2
4 1 3
4 2 1
4 2 3
4 3 1
4 3 2



借着这样分析理顺思路自己也明白了。不知道能不能也帮助和我一起初学的朋友。如果有错误的地方也请进阶者指出或者帮助,谢谢!
Screenshot_2019-12-13 python itertools 模块讲解 - 海燕。 - 博客园.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

清风独舞 发表于 2019-12-12 21:51
可以可以,最近也在自学python
tyt12345 发表于 2019-12-12 21:56
 楼主| 世界上只有dog雄 发表于 2019-12-12 22:00
tyt12345 发表于 2019-12-12 21:56
好像突然变高手了的样子,萌新路过

被你一说好像还真有点啊,不过是虚的
cindyhill 发表于 2019-12-12 22:02
学习到了。不过知识点还是比较容易的
xukonglilun 发表于 2019-12-12 22:06
同自学中🤝
Edison_Bin 发表于 2019-12-12 22:07
开始过很多次,放弃过很多次
x88tv 发表于 2019-12-12 22:09
支持下。来看看。
 楼主| 世界上只有dog雄 发表于 2019-12-12 22:09
Edison_Bin 发表于 2019-12-12 22:07
开始过很多次,放弃过很多次

我也是,最近才又捡起来
bester 发表于 2019-12-12 22:19
本帖最后由 bester 于 2019-12-12 22:20 编辑

把and 翻译成中文的 “并且”
把or 翻译成中文的“或者”

"并且"理解成 所有的条件都要成立
"或者"理解成,只要其中一个条件成立

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-16 04:06

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表