[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[原创代码] 某代码平台题目,比较字符串A是否包含字符串B?(吐槽贴)

题目字面是这样的:
比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母


题目本来就简单对不对,单纯的我心中也是这么想的,哼,这么简单的题目,只要填下下面一行流的代码就完事了!
  1.     return all([True if r in list(A) else False for r in B])
复制代码
然后在灌测试数据的时候,
提示B=="",
期望得到True
我WTF....然后改代码

经过一个小时的反复的修改和提交代码:

总之都是在提交代码测试的时候你才知道这个题目的真正要求。
最终能通过的代码是SB成这样的:
  1. class Solution:
  2.     """
  3.     @param A : A string includes Upper Case letters
  4.     @param B : A string includes Upper Case letters
  5.     @return :  if string A contains all of the characters in B return True else return False
  6.     """
  7.     def compareStrings(self, A, B):
  8.         # write your code here
  9.         #SB timu!!
  10.         if A=='' and B=='':
  11.             return True
  12.         if A == '' :
  13.             return False
  14.         elif B == '' :
  15.             return True
  16.         lista=list(A)
  17.         for r in B:
  18.             if r in lista:
  19.                 lista.remove(r)
  20.             else:
  21.                 return False
  22.                  
  23.         return True
复制代码
还是像projecteuler.net这种平台才是好的平台。只要能解决问题,代码你想怎么写就怎么来。
自由度高得多了。
1

评分人数

    • happy886rr: 我和我的小伙伴们都很惊讶!!!原来这么复杂。 ...技术 + 1
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

本帖最后由 codegay 于 2016-4-12 10:26 编辑

又刷了一道题,
题目是Implement pow(x, n).

相当我只填下:
return x**n
这几个字母.
  1. class Solution:
  2.     # @param {double} x the base number
  3.     # @param {int} n the power number
  4.     # @return {double} the result
  5.     def myPow(self, x, n):
  6.         # Write your code here
  7.         return x**n
复制代码
然后就通过了。。。
你完全不能确定,你在思路正确和代码正确的情况是否能通过。
于是你可能需要浪费大量时间去测试和修改提交你的代码。
我认为这是无意义的。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 2# codegay
python有啥好的调试器没,我一直用txt记事本写代码,经常中文括号和英文括号混一起。测试报错也不知道哪错,还有print怎么把内容打印输出到txt。我一直用print来调试。

TOP

回复 3# happy886rr


    我用python自带的IDLE写了很长时间。点File , new file
或者新建的.py的文件,右键用IDLE打开,编辑。

然后就是推荐PyCharm 社区版,应该是免费。。一般装上就能用。

我现在用sublime text 3,但是是收费的。所以不推荐。

ATOM 和sublime text 之类这种需要自己安装插件和配置build文件的,我也不推荐。

这个帖子可以参考:
https://www.zhihu.com/question/41896987
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 4# codegay
比如我for循环中有个print,如何把每次的print打印到txt里,方便我查看。

TOP

回复 5# happy886rr


   略麻烦。
  1. f=open("test.txt","w+")
  2. print(data,file=f)
复制代码
如果是想双击运行看效果,可以在代码底部加input()
想当于批处理中的pause

不过一般的编辑器都带有build功能,可以直接运行写好的代码看输出。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

这些题目意义何在?说一些毫无意义的问题,写来写去水平提高不了的

TOP

回复 7# Nsqs


    我也不会认为你会有什么更高明的见解。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 8# codegay


    自以为是

TOP

返回列表