笔记(一)

C++转职学Python

主要在看fkpython讲义

把最近的知识点做一个小结

0、python的元素不用定义类型,直接用即可,类型还可以随意改变(当场震惊)

1、python引入模块(类似C++头文件?)

import math

还有os,time,sys,random,string……

2、print的格式

print(value,……,sep=' ',end='\n',file=sys.stdout,flush=False)

sep是分隔字符

3、python内置函数(容易与变量重名)

del,from,bin,all,id,len,next,sum一定要小心

4、python的复数模块(import cmath(complex math))

注意虚部是j

5、python3在字符串中可以直接用中文

6、repr()函数

与str()相似(将其他类型转化为string类型)

repr还可以输出表达式形式的字符串

7、input()函数

……555555,我连A+B problem都过不了

就是这个input

它直接返回的是字符串

要用字符串中的split()函数将其按照空格来断开

语法str.split(str="", num=string.count(str)).

就是断开前num个子串str(str被删除)

8、除法运算

/(小数除法)

//(整除)

%(求余)

其中后两者并不要求是整数类型

9、乘方开方运算**

如4**0.5=2.0

10、python可以直接截取某个列表或元组的等差数列

a=[1,2,3,4,5,6,7,8,9]

a[1:7:2]=[2,4,6]

(区间[1,7)中取间隔为2的位置的数)

(列表是从0开始的)

11、列表[list],元组(tuple),字典{dict}

list:类似与vector

tuple:类似于不可变的vector

dict:类似于map

12、关于list

append()在末尾增加元素

pop()弹出最后的元素

count(value)计数

index(value,l=start,r=end)求value在[l,r)中第一次出现的位置,如果不存在就会报错

reverse()反向

sort()排序

例a.sort(kep=functools.cmp_to_key(cmp))可以自定义排序(要import functools)

13、关于dict

get(key)(若存在则返回value,否则返回None,防报错)

update(dict)(更新字典(若有重复则直接覆盖原来的值))

items()keys()values()(分别返回所有的key-value对,key,value)

pop(key)删除key-value对

popitem()返回dict中的某一个key-value对,并弹出

setdefault(key,value)若key存在则返回对应的value值,否则就新建key-value对,返回传入的value

dict.fromkeys(tuple||list,val)新建字典,包含的key值为tuple||list的值,value初始化为val

14、利用字典格式化字符串

dict={'name':asdf,'price':123}

print("%(name)s,%(price)010.2f"%dict)

15、生成随机数

import random

a=random.randint()

16、选择结构

if ……:

        ……

elif ……:

        ……

else:

        ……

17、三目运算符

A if B else C

B为真,返回A,否则返回C

18、while ……:

注意,python使用tab标记的":"执行内容,与C++使用的{}不一样

19、for-in循环(爷青结)

for i in range(0,10)(相当于for(i=0;i<10;i++))

for i in range(0,len(list||tuple))(遍历下标)

for val in list||tuple||set(直接遍历值)

for key,val in dict.items()(遍历key-val对)

20、for表达式(方便快速创建列表、元组等)

a=list(x*x for x in range(0,10) if x&1)

(a=[1,9,25,49,81])

(先暂时写到这里)

感悟:

OI中的C++其实只是编程中很小的一部分

五年OI生涯学习内容也仅仅停留于if、for、function和struct上

虽然这些足以实现许多高级算法与数据结构了

但真实的编程还有很多很多

比如类(class),模块,图形界面,数据库,多线程,网络编程,爬虫……

千万不要认为自己学了OI,进计算机专业做题就是砍瓜切菜

始终保持一颗谦虚而平和的心

这才是求学之道

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值