- 学习测试开发的Day66,真棒!
- 学习时间为1H54分钟,今天多学了40分钟:)
- 第七次全天课20190126(上午视频1H33M-2H14M)(下午视频0-40M)
练习:统计一句话中仅出现一次的字母
自己的
代码
'''## 练习:统计一句话中仅出现一次的字母'''
s="I love China , and you?"
s=list(s)
new_s=[]
for i in s:
if i==" " or (i>="A" and i<="Z") or (i>="a" and i<="z"):
new_s.append(i)
else:
new_s.append(" ")
s="".join(new_s)
result=[]
len_s=len(s)
for i in range(len(s)):
for j in range(len(s[i])):
if s.count(s[i][j])==1:
result.append(s[i][j])
print(result)
结果:
PS D:\0grory\day7> python .\one_word.py
['I', 'l', 'v', 'e', 'C', 'h', 'i', 'd', 'y', 'u']
PS D:\0grory\day7>
老师讲解
比自己的答案简洁了很多,过滤字母的时候就开始做判断了
s="ab cd abcde i fgh"
算法:
统计所有字母出现的次数,然后返回只出现一次的。
代码:
s="ab cd abcde i fgh"
result=[]
for i in s:
if(i >= "a" and i<="z") or (i>="A" and i<="Z"):
if s.count(i)==1:
result.append(i)
print(result)
结果:
PS D:\0grory\day7> python .\word_one_time.py
['e', 'i', 'f', 'g', 'h']
改进:封装成一个函数
def count_one_occurence_word(s):
result=[]
for i in s:
if(i >= "a" and i<="z") or (i>="A" and i<="Z"):
if s.count(i)==1:
result.append(i)
return result
s="ab cd abcde i fgh"
print(count_one_occurence_word(s))
结果:
PS D:\0grory\day7> python .\word_one_time.py
['e', 'i', 'f', 'g', 'h']
PS D:\0grory\day7>
列表、字典其实知识点不多,难在了组合,所以需要多练习!
推导列表
推导列表,可以用for和if,但是不能用else
>>> [x for x in range(1,10,2)]
[1, 3, 5, 7, 9]
相当于:
>>> a=[]
>>> for x in range(1,10,2):
... a.append(x)
...
>>> a
[1, 3, 5, 7, 9]
>>>
可以对推导列表最前面的数据进行运算
比如加法
>>> [x+1 for x in range(1,10,2)]
[2, 4, 6, 8, 10]
>>> [x+10 for x in range(1,10,2)]
[11, 13, 15, 17, 19]
还可以使用多个循环
>>> [x*y for x in range(1,4,1) for y in range(3)]
[0, 1, 2, 0, 2, 4, 0, 3, 6]
>>>
用if的情况
相当于在两个循环的下一层加了一个if
>>> [x*y for x in range(1,10,2) for y in range(3) if x==1]
[0, 1, 2]
>>>
转换类型也是支持的,比如转换成字符串是可以的,只要符合python的语法就行
>>> [str(x*y) for x in range(1,10,2) for y in range(3) if x==1]
['0', '1', '2']
>>>
使用推导列表遍历字典
>>> d={"a":"b",1:2,"c":"d"}
>>> [str(k)+"="+str(v) for k,v in d.items()]
['1=2', 'c=d', 'a=b']
>>>
小题:把一串字符串中所有的字母用大写字母实现
s="I am a boy!"
s="I AM a BOY"
自己的:
>>> s="I am a boy!"
>>> [x.upper() for x in s]
['I', ' ', 'A', 'M', ' ', 'A', ' ', 'B', 'O', 'Y', '!']
>>>
把字母变成大写的几种方式:
>>> "a".upper()
'A'
>>> chr(ord("a")-32)
'A'
>>>
老师的:
>>> s="I am a boy!"
>>> "".join(i.upper() for i in s)
'I AM A BOY!'
>>>
>>> "".join(chr(ord(i)-32) for i in s if (i>="a" and i<="z"))
'AMABOY'
老师的建议
遇到不会的题,这次照着答案写出来了,3天之后再做一次,如果10分钟做不出来,一个星期再做一次,老师讲的题大部分自己都做过10遍以上了
《财富自由之路》
人的大脑: 越练习越强
刻意练习: 有目的的,有提高的,不能老做容易的
元认知: 就是你的思考方式是怎么样的
你的领导不重视你。问题细分:
1.好的项目不派你
2.绩效评级都是中低
3.从来没表演过你
4.经常训你
怎么改变?
1.换个工作(在想办法)
2.换个岗位
3.抱好领导大腿(想办法)
4.维持现状
1.找找机会就换 4 维持现状
swot(一个事情的模式)
波士顿矩阵(公司业务的模型)
要实践。
做逻辑题:
GRE(1000题以上)---->推理
动力:
现象:在开始学习的,强,中,弱
如何保持:
1. 坚持
- 只想做好每一天,不要间断任何一天
- 赋予强大的意义,多挣200W,2W行。1行价值100块
老师有个朋友在得到开了专栏,1个字2500元
2. 氛围
焦虑的问题
1.忙:忙到没有时间思考
2.为什么?怕被淘汰
家和工作如何平衡
解决办法
- 找到你的问题,去解决,需要很长的时间
- 长期积累:每天进步一点点
认知:认知是复利效应
- 老师的例子,之前看任何一本计算机的书,都需要半年以上起步!
现在看一本书,2个星期即可 - 先学python还是先学Java?先学哪一个都好,总比一直不开始强!【饿死在两堆草之间的驴】
- 学了很多知识,很快就忘了。从不用---->实践
理财:
如果1-块钱都是可以理财的。看的收益率,不是绝对值
10%--->早起打卡
- 支付宝的运动:早起打卡
- QQ运动:走路,5000(5-15),8000,12000
基金推荐:工银瑞信双利债券b,2个月:1.35%,8%债券基金
定投:股票基金定投、指数基金
买股票:4只以内,你觉得很有前景的行业。
保险业:平安
注意力>金钱>时间
把学习这件放在最高优先级
比如晚上加班到10点,可以中午学习或者晚上学习
把注意力集中在最重要的事情上
建议,别轻易换行业(除非已经在这个行业上做到了极致,无法再提高的情况下,这时你已经有很多机会了,比如人脉、眼界)如果一直工作在底层,是没有什么机会的