Codewar python训练题全记录——持续更新

 

 

1.square 数的判断

from math import sqrt
def is_quare(n): return n > 0 and sqrt(n).is_integer()

point:

from math import sqrt

is_integer()命令使用

% 求余符号的使用

return () 可以直接返回 T or F

2. two fighters and one winners

 

point:

ceil() 取上整数命令, 【考虑到实际情况中 damage 值多为Integer, 所以用ceil()取整】

attrgetter() 定位命令??  【attribute 可以自己创建, 例如本例子中的 turn attribute】

 

 

 3. find needle in the haystack 

point: 

index() method 使用, 占位符的应用  

return 代替 print

enumerate() method 使用 

str.format() 字符的占位符? 可以应用公式的占位符??

 

 4.10 

Format a string of names like 'Bart, Lisa & Maggie'.

Given: an arrary containing hashes of names:

Return: a string formatted as a list of names separated by commas except for the last two names.

Questions:

1. what is hashes?  http://pythoncentral.io/hashing-strings-with-python/

2. 如何操作hash值保证只返回单独的

 

暂时没有答案

 

Reversing Words in a String

for i in st   没有用到循环, 直接使用 split() reverse() join()

思路: 找到空格就转换或者找到 “ ' ”就直接

Point:

str.split([sep[, maxsplit]])

Persistent Bugger.

思路: 1 * n 一定是个位数  2 * 1 2 3 4一定是个位数  3 *  1 2 3 一定是个位数 

质数不可以, 一定是要

point: 无法解锁答案

 

Square Every Digit

思路: number 可以循环么? 转换数据类型 然后直接循环

 

point: 生成新的字符两种方法 

Mystring = ""
for i in str()
    Mystring += str( )
' '.join(str() for i in str(s))

  总结: string 可以用来循环, 生成string的命令, string的拆分, reverse() 命令进行reverse item

 

4.11

Remove First and Last Character:

point:

考查string类型的使用

感觉智商被碾压了。 只关注于细节上,看到单个的字符而没有注重整体的处理。                                                                                                 

 

 

Two to One

point:

how to sort

如何排除重复的选项?

 

4.16日更新

——————————————————————————————

思路:

1.判定是否为square -> math.sqrt(x) 是一个整数

2.求得下一个square的值 sqrt(x) + 1 后的平方值

 

第一道自己做出来的题: 不错

 

 

 

思路分析:str() 命令直接使用

 

 

——————————————

 4.17 更新

思路分析:

思路一:

1.找到space的位置

2.删除掉space 

思路二:

遍历整个string -> 不是space的字符保留 -> 生成到新的string 中

 

 

 point:

1. replacec() 命令的使用  string.replace(str1, str2, num = string.count(str1)) 用str2替换string中出现的所有str1,或者最多num个

2. “ ”和 “”的区别,space也属于一个字符??

 

 

Point:

1.内置的sum()命令

2.循环与条件判断式的结合

 

思路分析:

是否需要用到递归?

行数与数值大小的关系?1,4,16,9,25,36

 

 

感觉自己在闹着玩一样,n*(n**2) 可以合并为n**3

 

————————————————————

4.17日更新

 

 

 

point: 善用求余符号 //

 

 

point: 

range 的结果返回list/ range(start, stop[, step]) / 直接构造数列的思考角度

 

 

括号的重要性体现在整体性上么??

point:

return 条件判断默认返回True/ False

正则表达式的使用 \d {n}显示n位

bool() 命令

 

2017-5-2 更新

 

这个问题是关于list 使用

思路: 遍历list, count每个元素出现的次数,如果次数超过指定的数值,删除在后面的数

 

 

 

思路: 分别找到两个List 中最短的和最长的string, 然后做差, 如何找到这个

 

 

 

思路: 与reduce命令有关? input 在哪里?

 

 

 

5.14日更新-

每天一小时 三道题

 

 

common denominator 题目 完全懵逼了 没有看懂需要做什么。意思是找到公用的分母,然后根据list中的rational 数值确定分子?

 

 

https://www.codewars.com/kata/54d7660d2daf68c619000d95/train/python 

 

思路:

1. 先确定所有的乘积 ???

2. 判断乘积是否存在连续的fib数

3.

 

 Reverse a String 

 

 

point: sort函数用来排序+ 提取相关元素即可以完成

 5.15日更新

 

point: 

log 函数 + ceil()函数 取小于

 

 

思路:

1.搜索两个点之间的内容

2.搜索“//” 符号 至 “.”

正则表达式?? 

两种编辑模式 : http:// + content +.com...   //  https://www.content.com  对于第一种 提取 "//" 和 "." 符号中间部分的内容

 

 

3. 完全没看懂题目

 

 

 

5.16 更新

 2. best travel 题目

 

list 中求和,3个元素的和,

point: 

1.循环后连续求和?

 

 

 

 

 

 

 5.17 更新

point:这是一个对于string的操作:

思路:

从最小位开始计算,如果超过60 就进一位? 60进制? 超过24更新为0?

 

 5.18 更新

思路:先转换为8bits 再将8bits的字符转换为32bits的数字

问题:字符转换时如何做到的??

对于<< 符号?

 

 

3. summing a number's digits

 

posted @ 2017-04-09 00:00  AugusKong  阅读(1774)  评论(0编辑  收藏  举报