小编Mar*_*oun的帖子

生成NXN螺旋

我已经被赋予了在python中创建螺旋的任务,其中用户输入一个数字,例如3,它将输出一个3x3螺旋,如下所示:

- - \
/ \ |
\ - /
Run Code Online (Sandbox Code Playgroud)

我不是在寻找完整的代码我只是不知道如何去做,显然使用if语句打印出所有可能的解决方案是不可能的或合乎逻辑的.这里真正的问题是我应该做什么,for循环,定义我自己的功能?有没有人可以链接我的文件,这将有所帮助.完整的任务大纲如下:

你的任务是编写一个程序,在一个盒子里面绘制一个给定大小的螺旋.

您的程序应该询问用户一个表示盒子大小的正整数.然后你的程序应该在那个大小的盒子里打印出一个螺旋形.

例如:

Enter size: 3
- - \
/ \ |
\ - /
Run Code Online (Sandbox Code Playgroud)

和:

Enter size: 4
- - - \
/ - \ |
| \ / |
\ - - /
Run Code Online (Sandbox Code Playgroud)

和:

Enter size: 5     
- - - - \
/ - - \ |
| / \ | |
| \ - / |
\ - - - /
Run Code Online (Sandbox Code Playgroud)

输入大小始终大于1.

python

9
推荐指数
2
解决办法
1575
查看次数

搜索与另一个字符串元素列表匹配的字符串元素列表

我有一个带有字符串的列表names,我需要使用names列表中的每个元素搜索列表中的每个元素pattern.找到了几个可以循环访问单个字符串但不是字符串列表的指南

a = [x for x in names if 'st' in x]
Run Code Online (Sandbox Code Playgroud)

先感谢您!

names = ['chris', 'christopher', 'bob', 'bobby', 'kristina']
pattern = ['st', 'bb']
Run Code Online (Sandbox Code Playgroud)

期望的输出:

a = ['christopher', 'bobby', 'kristina]
Run Code Online (Sandbox Code Playgroud)

python

9
推荐指数
1
解决办法
195
查看次数

对象如何隐式调用toString方法?

如果我正在打印类的对象,那么它正在打印toString()方法实现,即使我没有编写toString()方法,那么实现是什么,它是如何在toString()内部调用的?

java

8
推荐指数
3
解决办法
2万
查看次数

+字符串类中的运算符

这是关于'+'运算符返回的结果的差异.结果因字符串文字和字符串对象而异.

String str="ab";
String str1="c";
String str2 = "ab"+"c"; // Line 3
String str3 = "abc";
String str4 = str+str1;  // Line 5

System.out.println(str2==str3);  // True
System.out.println(str2==str4);  // False
Run Code Online (Sandbox Code Playgroud)

结果我们可以推断出,使用文字,返回字符串池中已有的对象,如第3行的情况,并返回字符串对象,返回新对象,如第5行所示.为什么会这样?

java string

8
推荐指数
1
解决办法
143
查看次数

嵌套循环结构

这是我作业的一部分.我需要的只是一些建议.我需要编写一些嵌套的循环结构,以打印以下内容:

"122333444455555"

"+**+++****+++++"

"--***++++-----******+++++++"
Run Code Online (Sandbox Code Playgroud)

这是我打印第一组符号的代码

public static void main (String[] args)
{
    int i,j;
    for(i=1;i<6;++i)
    {
        for(j=1;j<i+1;++j)
        {
            System.out.print(i);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这完全没问题.我只是弄清楚第二和第三组符号.
对我缺乏经验表示歉意,我对Java很新.

java nested-loops

8
推荐指数
1
解决办法
465
查看次数

将"\"替换为使用String的replace()的任何其他字符

我不能用String做一个简单的操作,用'替换''.

示例:t'est\'- >t'est*

我尝试过使用replace和replaceAll方法:

String s的值为: "t'est\'";

s.replaceAll("\'", "*"); -> result: t*est*
s.replaceAll("\\'", "*"); -> result: t*est*
s.replaceAll("\\\'", "*"); -> result: t*est*
s.replaceAll("\\\\'", "*"); -> result: t'est'

s.replace("\'", "*"); -> result: t'est'
s.replace("\\'", "*"); -> result: t'est'
s.replace("\\\'", "*"); -> result: t'est'
s.replace("\\\\'", "*"); -> result: t'est'
Run Code Online (Sandbox Code Playgroud)

但在任何情况下我都没有得到结果.

java string replace special-characters

8
推荐指数
2
解决办法
357
查看次数

lambda参数解包错误

在Python 2中,这段代码没问题:

f = lambda (m, k): m + k

m = [1,2,3,4]
k = [5,6,7,8]

print(map(f, zip(m, k)))
Run Code Online (Sandbox Code Playgroud)

但是在Python 3中发生了以下错误:

f = lambda (m, k): m + k
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

如果我删除lambda表达式中的括号,则会发生另一个错误:

TypeError: <lambda>() missing 1 required positional argument: 'k'
Run Code Online (Sandbox Code Playgroud)

使用元组作为单个lambda参数的方法也适用于Python 3,但它不清楚(难以阅读):

f = lambda args: args[0] + args[1]
Run Code Online (Sandbox Code Playgroud)

如何在Python 3中以正确的方式解压缩值?

python lambda tuples unpack python-3.x

8
推荐指数
3
解决办法
2867
查看次数

计算在selenium python中找到的元素数量

我有以下html页面,我试图找到这个词,silver并记住发现了多少.

这只是两个显示在这里,但它可以产生更多,所以我不知道确切的计数.

<tr id="au_4" class="odd">
<td>Silver</td>
</tr>
<tr id="au_4" class="even">
<td>Silver</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

这是我尝试但没有运气:

count =  driver.find_elements_by_xpath("//td[text()='Silver']")
Run Code Online (Sandbox Code Playgroud)

python selenium

8
推荐指数
1
解决办法
2万
查看次数

声明ArrayList或集合实现类的最佳实践

任何人都可以解释以下ArrayList存储声明的区别String.

List type1 = new ArrayList();
List type2 = new ArrayList<String>();
List<String> type3 = new ArrayList<String>();
ArrayList<String> type4 = new ArrayList<String>();
List<String> type5 = null;
ArrayList<String> type6 = null;
Run Code Online (Sandbox Code Playgroud)

那么上面哪个声明是声明ArrayListString的最佳做法,为什么?

java collections arraylist

8
推荐指数
2
解决办法
4510
查看次数

list()最多需要1个参数(给定3个)

我想得到像这样的矢量: v:[1.0, 2.0, 3.0]

这是我的代码:

class VECTOR(list) :
     def _init_ (self,x=0.0,y=0.0,z=0.0,vec=[]) :
          list._init_(self,[float(x),float(y),float(z)])
          if vec :
               for i in [0,1,2] :
                    self[i] = vec[i]
Run Code Online (Sandbox Code Playgroud)

但是当我输入时:a = VECTOR(1,2,3) 它出错了:

TypeError:list()最多需要1个参数(给定3个)

我怎么解散它?

python

8
推荐指数
1
解决办法
3864
查看次数