Python基础梳理

自己的学习总结,关于python。

总结的基本逻辑是:元素——集合——语句——函数——集——文件操作——随机数生成


首先是Python中最基本的元素,是数字和字符串。

数字的运算有加(+),减(-),乘(*),除(//),取整(/),取余(%)

字符串有比较多的运算。

第一,统计字符串的长度:len();

第二,取字符串中的某一位a[0](#0代表了第一位的下角标,第二位的下角标为1,以此类推);

第三,统计字符串中某一个字符有多少个a. count('?')(#?代表了某一字符);

第四,将字符变成大写:a. upper();将字符变成小写:a. lower();

第五,分割字符串:a. spilt('?'),若不填,则按照空格分割。

数字与字符串紧密联系,可以相互转换:将字符转换为数字int(),将数字转换为字符str()。除此之外还能判断字符的类型:判断是否为全数字a. isdigit,判断是否为全字母a. isalpha。


接下来,是Python的三种基本集合:列表,元组和字典。三者的区别更多体现在格式与某些功能是否能够运行。

列表相当于一个大集合,里面放入元素,元素可以是数字或者字符串。列表的格式是方括号,例如a = [1,2,3,'sdf']。列表支持如下运算:

第一,计算列表长度:len(a)。

第二,取列表中的某一位:a[0](#0表示第一位的下角标,1是第二位的下角标,以此类推)。第三,统计某个元素出现的的次数:a. count('?')(#?代表了某一字符)。

第四,合并列表:c = a + b,即将a,b中的元素合并并存入c中。

第五,扩展列表:a. extend(b),即将b中的元素存入a中,不产生新的列表。

第六,追加值:a. append('abc'),即将字符串'abc'存入列表a中。

第七,删除列表数据,有两种方法,一种是a. pop(0)即根据下角标删除某个元素,另一种是a. remove(1)即删除某个给定的值(#此处1不是下角标而是某个具体的元素)

列表除了基本操作以外,还有一个重点是列表生成式。列表生成可以直接存入数据,例如s = [1,2,3,4,5];也可以用list(range(1,100))的方法简便输入。而更为通用的方法,应该式列表生成式[变量表达式 for 变量 in 集合 判断条件 ]。例如:a = [i for i in range(1,100) if 1%2 == 1]即可以生成一个包含1到100奇数的列表。另一个例子:给定两个字符串a,b,提出他们的公共元素,并存放到列表中:c = [i for i in a if i in b]

元组与列表类似,不同之处是元组不可更改,因此无法运行列表支持有的一些操作。元组的格式是括号,例如a = (1,2,3)。

第一,取元组中的某一位:a[0](#0表示第一位的下角标,1是第二位的下角标,以此类推)。第二,统计某个元素出现的次数:a. count('?'),

第三,检测某个元素下角标:a. index('?')。

第四,删除元组:del(a),因为元组不能更改,所以只能整个删除,也不支持追加等操作

字典的格式是{1:1,2:2,3:3........}。字典有一下的基础操作:

第一,添加数据:a['abc'] = [123],前者为键,键具有唯一性,不能更改,通常使用数字和字符串,也可以是元组,后者是值,值可以是任何数据。

第二,计算字典长度:len(a)。

第三,获取某个键值有两种方法,一种是a['abc'],有值打印,没值报错,第二种是a. get('abc'),有值打印,无值不报错。

第四,在不知道字典内容的情况下输出字典数据:a. items()(#提出字典所有内容);a. keys()(#提出所有键);a. values()(提出所有值)。

第五,清空字典:a. clear()。

第六,删除字典的键值对:del(a['abc'])或者 a. pop('abc')。

与列表相同,字典也有字典生成式,语法是语:{ for 变量 in 集合 判断集合}。例如,给定字符串s = 'abcdefghijklmn',输出 下标:值 的字典集合print({s. index(i):i for i in s})


有了集合,便有了切片,切片即从集合中去出想要的元素。假定列表a = [1,2,3,4,5,6,7],则切片的格式为a[起始数字:结尾数字],左闭右开,下角标可为负数,但左右两边对应法人元素 不能为降序。

对应表

说完了集合,更重要的应该就是语句和函数了。常见的语句有条件语句if,循环语句for,条件循环while

If语句其实比较简单,与c++中的语句规则相似。If可以与elif和else连用。其中还有一些连接词:Not 表示反向判断值,and 表示同时判断,or表示 多条件通过一个即可。

For循环语句也与c++中的循环语句相似,语法是:for 变量名 in 集合:......其中可以嵌套If等其他语句,例如:用for循环读取range(10,100)操作的值

res = []

for i in range (10,100)

    if i%3 ==1

        res. append(i)

print (res)

While条件循环语句与条件语句的区别是:while重点是条件循环,一开始进入循环的时候,就要对条件进行判断,for循环条件是明确的集合,循环次数是明确的。其中break表示结束本次循环,continue表示跳过本次循环。

函数就是把一系列操作集合为一个固定的函数,在接下来的编写中可以方便使用,语法是:

def 函数名(参数1,参数二,......)

    操作1

    操作2

    操作3

    ......

    return


类Class就是将多个函数集合起来,对某物进行定义,它的基础语法是:

class 类名(object):

    属性1

    ....

    操作1

    ....

可以用class对事物进行定义,例如:

class Brid(object):

    weight = 100

    height = 100

    def cry(self):

        print ('emmmmmmmmm')

    def talk(self):

        print('身高:' + str(self. height), '体重' + stir(self. weight))

接下来将类初始化成对象:bird = Bird() ,并且调用对象的属性和方法bird. weight;bird. height;bird. cry();bird. talk()

还可以在类中进行初始化传参,这样就不只定义一样事物,而是对一类事物进行初始化,例如:

class Phone(object):

    def__init__(self, title, weight, cpu):

        self. title = title

        self. weight = weight

        self. cpu = cpu

    def call(self):

        print('品牌:', self. title, '整机重量:', self. weight, '核心数:', self. cpu)

    def test_game(self. game):

        if self. cpu > game:

            print(self. title, '高帧数运行')

        elif self. cpu == game:

            print(self. title, '流畅运行')

        else:

            print(self. title, '低帧数运行')

接下来只要输入不同手机的属性,就可以得出不同的结果,例如输入xm = Phone('小米6', 10, 4),xm. call(),则可得到结果#品牌:小米6 整机重量:10 核心数:4;xm. test_game(3)可得到结果 #小米6 高帧数运行


Python还可以对文件进行操作,具体的语法是open('文件名','模式')。

模式对应操作

对文件的操作包括:

第一,写入操作。例如f = open('t. txt', 'w') ,再输入f. write('hello world') ,这时字符被存放在了缓冲区,需要再进行f. flush()操作,最后关闭文件f. close() ,则无法再写入。

第二,追加操作。f = open('t. txt', 'a')打开文件,f. write('nice to meet you')将字符存入缓冲区,最后f. flush(),即可在文件中显示字符。

第三,读取操作。f = open('t. txt', 'r'),读取模式打开文件,f. read()操作即可阅读文件,f. close()关闭文件。此外f. readline() 可以只读一行,反复操作可按照顺序读取直至最后一行

#总结:读取文件用r,r+,写入文件用a,a+,新建文件用w,w+,其他模式虽可以进行相应操作,但可能存在覆盖等可能。


最后是生成随机数操作。因为实在不知道能按照逻辑顺序放在哪儿了,所以便放在了最后。生成随机数的关键是random.操作,分一下几个板块:

第一,获取随机数。此时并没有一个已知集合,只是随机在某个范围内随机。获取random. andint(1,9)即可以获取范围内的随机整数;random. uniform(1.1,9.8)即可以获取范围内的随机小数。

第二,随机取值。此时已知一个列表a = [1,2,3,4,5,'a,''b'],要从a中随机取一个值:random. choice(a);random. randrange(start, end)即 random. choice(range(start, end))

第三,将字符打乱顺序打乱顺序。例如s = list('abcdefg'),则进行random. shuffle(s)操作

第四,随机选择指定长度的数据。语法是random. sample(集合,长度值),此时集合数据的个数必须大于等于传入的长度值。


以上是全部,还有很多小的基础知识点不一一列出了。

此篇错误应该很多,仅是个人学习总结所写,接受指正,不接受批评。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容

  • 一、快捷键 ctr+b 执行ctr+/ 单行注释ctr+c ...
    o_8319阅读 5,770评论 2 16
  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,688评论 0 10
  • 孩子的哭声还在耳边响彻着。 这是一个大约九岁或十岁的男孩,我打开房门,瞄了一眼。 七点十分,正是孩子们上学的时间,...
    徒步独行阅读 308评论 0 4
  • 今天,刚下好简书APP,开始阅读。 看到很多有意思的文章,心里获得了许些平静。阅读的力量真的很伟大,能让人沉浸在一...
    苏小呆的爸爸阅读 193评论 0 0
  • 多年前,曾看过一部高收视的日剧。正是花季年龄的女主角在一次意外受伤后到医院检查,被证实她患上了一种罕见病。病患者会...
    Muyanccc阅读 176评论 0 0