QQ个性网:专注于分享免费的QQ个性内容

关于我们| 网站公告| 广告服务| 联系我们| 网站地图

搜索
编程 JavaScript Java C++ Python SQL C Io ML COBOL Racket APL OCaml ABC Sed Bash Visual Basic Modula-2 Logo Delphi IDL Groovy Julia REXX Chapel X10 Forth Eiffel C# Go Rust PHP Swift Kotlin R Dart Perl Ruby TypeScript MATLAB Shell Lua Scala Objective-C F# Haskell Elixir Lisp Prolog Ada Fortran Erlang Scheme Smalltalk ABAP D ActionScript Tcl AWK IDL J PostScript IDL PL/SQL PowerShell

python基础100题之一 数字组合

日期:2025/04/05 22:57来源:未知 人气:52

导读:题目: 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?思路一:遍历1,2,3,4这4个数,剔除重复的数(如111,222,333,444,即i=j=k)参考代码如下:count =0 # 初始计数为0个for i in range(1, 5): # range函数的取值范围是左闭右开区间for j in range(1, 5):for k in......

题目: 有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

思路一:遍历1,2,3,4这4个数,剔除重复的数(如111,222,333,444,即i=j=k)

参考代码如下:

count =0 # 初始计数为0个

for i in range(1, 5): # range函数的取值范围是左闭右开区间

for j in range(1, 5):

for k in range(1, 5):

if (i != j) and (j != k) and (k != i):

print(i,j,k)

count += 1 # 每输出一组不重复的加1

print(count)

思路二:python众多标准库中有没有一个函数可以直接将给出的数据排列组合?

答案是肯定的,那就是 itertools.permutations函数!

itertools.permutations函数

itertools.permutations 函数是Python标准库 itertools 模块中的一个函数,用于生成给定可迭代对象的所有排列组合

定义:

itertools.permutations(iterable, r=None)

参数

iterable:必需,表示要进行排列组合的可迭代对象,例如:列表、字符串等。

r:可选,表示每个排列组合的长度。如果未提供该参数,则默认为可迭代对象的长度。

解题参考:

import itertools #导入itertools count = 0 list1 = [1, 2, 3, 4] for i in itertools.permutations(list1, 3): # 对list1进行排列组合的结果遍历 print(i) count += 1 # 计数 print(count)

参考

Tips: 以上就是本次题目的2种解题方法,欢迎大家再提供更多的解题思路或方法供大家相互学习,同时希望大家多多关注,点赞、收藏,这对我是莫大的鼓励和帮助,谢谢大家,共同学习共同进步 #高考起航梦想生活#!

关于我们|网站公告|广告服务|联系我们| 网站地图

Copyright © 2002-2023 某某QQ个性网 版权所有 | 备案号:粤ICP备xxxxxxxx号

声明: 本站非腾讯QQ官方网站 所有软件和文章来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告