Python基础

python优点:

    简单易学 、免费开源、丰富的库、可扩展性、可移植性、面向对象、规范的代码。。。

    缺点:执行效率相对慢

python应用场景:

    Web开发,自动化脚本,爬虫,科学计算。。

注释:

    #单行注释

    多行注释""" """

变量:

    用来存储数据

    A=123

变量的类型:

    数字-int、float

    布尔-True、False

    字符串 str

    列表 list

    Tuple 元组

    Dict  字典

    变量类型的查看type()

标识符:

    构成:

        字母、数字、下划线

        a b 不能作位标识符

        Abc 不等于 abc


命名规则:

    三大命名规则:

        大驼峰 Abcd

        小驼峰 abCd

        下划线 a_bcd

    不能以其它字符命名


关键字:

    定义:特殊的标识符,关键字不可用来当作变量名

    如何在Python查看关键字:

        windows+R打开命令行

        >>> python

        >>> import keyword

        >>> keyword.kwlist

        出现关键字:['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

输入:

    Python2.0的输入: raw_input() 将字符串与int类型分开

    Python3.0的输入: input() 结果为字符串


输出:

    格式:print()

    格式化输出:print("%s, %d" % (变量名1,变量名2))


常用的格式符号:

    %s -- 字符串

    %d -- 十进制整数(int类型)

    %f -- 浮点

    %c -- 字符


输出的换行:

    \n

运算符:

    +、-、*、/ --> 加减乘除

    // --> 取整(3//2==1)

    % 取余

    ** 幂

    优先级 先幂再乘除最后加减


赋值运算符:

    =

    当个变量赋值 a=123

    多个变量赋值 a,b,c=1,2,3


符合赋值运算符:

    +=、-=、*=、/=、//=


python常用的数据类型转换:

    int()数字整形类型

    float()浮点类型

    str()字符串类型

    list()列表类型

    tuple()


if—elif-else判断:

    格式:

        if 判断条件:

            条件成立输出结果

        elif 判断条件2:

            条件2成立输出结果

        else:

            条件不成立输出结果


比较运算符:

    ==、!=、>=、<=、>、<


逻辑运算符(或、且、非):

    and 且

    or 或

    not 非


if嵌套:

    格式:

        if 判断条件:

            if 判断条件2:

                成立返回结果

        else:

            不成立返回结果

while循环使用场景:

    while 与 if语法相似

    区别是if条件成立,执行一次,while条件成立,重复执行

    实例:

        a = 0  变量为0

        while a < 10:  a小于10执行

            a += 1 每次循环a=a+1

            print(a) 输出结果

while嵌套应用场景:

    正倒三角形、九九乘法表

    三角实例:

        i = 1

        while i <= 5:

            j = 1

            while j <= i:

                print("*", end='')  end加距离

                j += 1

            print("\n")  \n换行

            i += 1


    乘法表实例:

        i = 1

        while i <= 9:

            j = 1

            while j <= i:

                print('%d*%d=%d'% (j, i, j*i), end=' ')

                j += 1

            print('\n')

            i += 1


for循环:

    break终止循环

    continue跳过当前,进行下一次循环


for循环三角实例:

        for i in range(1, 10):

            for j in range(1, i):

                print('*', end='')

                j += 1

            print('\n')

            i += 1   


for循环九九乘法表:

        for i in range(1, 10):

            for j in range(1, i+1):

                print('%d*%d=%d' % (j,i,j*i), end=' ')

                j += 1

            print('\n')

            i += 1


字符串介绍:

    格式:变量名=""

    输出:print("内容")

    格式化输出print('%s,%d' % (str, int))

    输入:input()结果为字符串类型


字符串下标和切片:

    下标--索引,从0开始

    切片:对操作的对象截取一部分(字符串,列表,元组)

    格式:

        [起始值:结束:步长]  包头不包尾 步长表示间隔几位取值,步长若为符,字符串为倒序排列


字符串常的常见用法:

    find与rfind:

        find方法:从左检测是否包含内容,如包含返回第一个匹配的索引,不包含返回-1

        rfind方法:从右检测是否包含内容,如包含返回第一个匹配的索引,不包含返回-1


    index与rindex

        用法跟find差不多,只不过:如果匹配不到则报错


    count 在返回mystr(start~end之间,出现的次数)

        如果存在则返回出现次数,如果不存在不会报错而是返回0


    replace替换

        用来将字符替换


    split

        以...分割,通过split可以对字符串进行列表的转换


    capitalize

        把字符串第一个字母大写


    title

        把字符串每个单词的首字母大写


    endswith

        判断是否以XXX结尾,结果为布尔(True,Flase)


    lower

        将所有的大写转为小写


    upper

        将所有的小写转为大写


    ljust

        左对齐 空格填补


    rjust

        右对齐 空格补齐


    center

        居中对齐 空格补齐


    lstrip

        删除左边空格


    rstrip

        删除右边空格


    strip

        用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列

        该方法只能删除开头或是结尾的字符,不能删除中间部分的字符


    partition

        用来根据指定的分隔符将字符串进行分割,返回元组


    rpartition

        类似于 partition() 方法,只是该方法是从目标字符串的末尾也就是右边开始搜索分割符


    splitlines

        按行进行分割,注意返回的是列表


    isalpha

        判断字符串中是否有字母,是True反之false,判断--布尔--返回结果(True,False)


  isdigit

        判断字符串中是否有数字,是True反之~False


    isalnum

        判断字符串中是否有数字或者字母,是True反之False


    isspace

        判断字符串中是否有空格,是True反之False


    join

        拼接(常用)通常与split联动

字符串的操作:

    sel = "ch ss arrr o"

    sel = sel.split()  #利用split转换成列表['ch', 'ss', 'arrr', 'o']

    print(sel)

    long = ""  #创建空字符 设为最大值

    for i in sel:  # i为['ch', 'ss', 'arrr', 'o']里的数值

    if len(i)>len(long): #进行长度数值的比较

        long = i  #  i的最大值 添加进 long

    print(long)  #输出

    index() 首页/索引  (重点) 因带克斯

    ret = my_str.index("o")

    print(ret)

    ret = my_str.index("l",0,8) # 0,8区间 含头不含尾

    print(ret)

    count()查找某个字符出现次数 (重点)  抗特

    ret = my_str.count("l") #区分大小写

    print(ret)

    replace() 替换 (重点) 瑞普累思

    ret = my_str.replace("h","H",1) #若不写次数默认全部替换

    print(ret)

    split() 切割分割  (重点) 色普利特

    ret = my_str.split(" ")#切割空格

    print(ret)

    upper() 转换mystr中的小写字母为大写 (重点)  啊盆

    print(my_str.upper())

    lower() 将大写转小写 (重点) 楼窝儿

    print(my_str.lower())

    isalpha() 如果mystr所有字符都是字母,则为真,否则假 (重点) 意思次普拉

    ret = my_str.isalpha()  #空格也算字符

    print(ret)

    isdigit() 判断是都都是数字  (重点)  意思迪G特

    ret =my_str.isdigit()

    print(ret)

    isalnum()  如果mystr所有字符都是字母或数字则返回TRUE(真)否则假  (重点) 意思IO奶母

    ret = my_str.isalnum()

    print(ret)

    isspace  如果mystr中《只》包含空格,则返回True,否则False  (重点) 意思思配词

    ret = my_str.isspace()

    print(ret)

    rfind() 类似于find()函数,不过是从右开始查找

    print(my_str.find("l"))  #2

    print(my_str.rfind("l"))  #5

    capitalize()  把字符串第一个字符大写

    my_str = "i am a student"

    ret = my_str.capitalize()

    print(ret)

    partition() 将字符转换三部分,str前,str和str后  从左开始查找

    my_str = "i am a student"

    print(my_str.partition("am"))

    rpartition() 将字符转换三部分,str前,str和str后  从右开始查找

    my_str = "i am a student"

    ret = my_str.rpartition("a")

    print(ret)

    splitlines() 按照行分割,返回一个包含各种作为元素的列表

    my_str = "i \nam a\n student"

    print(my_str.splitlines())

    rjust()  返回一个原字符串右对齐,并使用空格填充长度  width的新字符串

    ljust()  返回一个原字符串左对齐,并使用空格填充长度  width的新字符串

    join 表示添加

    my_str = "——"

    list = ["my","name","is","laowang"]

    ret = my_str.join(list)

    print(ret)

列表的循环遍历:

    For i in

    List = [1,2,3,4,5]

    For i in list:

        Print(i)


    while也可用


列表的相关操作:

增删改查

    增:append extend insert

        Append 默认添加到列表尾部

        Extend 添加到列表尾部

        insert通过下标索引插入数据

            B = [1,2]

            B.insert(0,3) 0是下标,3是数字


    列表的删除 del pop remove

        Del 根据下标进行删除

        Pop 删除最后一个元素

        Remove 根据元素的值进行删除


    列表的修改:

        第一步:精准定位,通过下标找到要改的数据

        第二步:再修改

        B = [1,2,3]  #把1改为4

        B[0] = 4

        # B[0] = "4"

        print(B)


    列表的查询

        In  not in  index  count

        In 存在

        Not in 不存在

        Index 存在返回下标,不存在报错  b = a.index("a",1,4) a是要找的,1,4是起始位置

        Count a=[1,2,3,4,5,1]  1在列表中出现过几次


    列表的嵌套

        列表里面再放一个列表

            A = [['1,2,3'],[“1,5”]]


元组

    访问元组

    通过下标访问

    Tuple = (“houyue”,1,1.01)

    b = Tuple[0]

    print(b)


    Index 存在返回下标,不存在报错  b = a.index("a",1,4) a是要找的,1,4是起始位置

    count a=[1,2,3,4,5,1]  1在列表中出现过几次


字典

    格式:

        Dict={“Key键”:”value值”}

        print(dict["键"]) 如果未找到键则会报错

        print(dict.get("键")) 通过get找就算未找到也不会报错,返None


  字典常见操作:

        查看元素:除了用键(key)查找数据以外还可以用get来查找

        修改元素:每个元素都可以修改,只要找到key,就可以肆无忌惮了 a = dict["键"]="更改的值"

        字典的添加:直接添加一个键--值, Dict[“键”]=值


    字典的删除:

        Del

        Clear()

        Pop


        Del 指定删除元素  ---(扩展pop用法类似)

            Del dict[“name”]

            Print()

        Del 删除整个字典

            Del dict


        Clear()清空字典

            Dict.clear()


    字典的相关操作:

        len()

            a = len(dict)

            测量字典中,键值对的个数 

            count()在字典中没法用


        keys

            a = dict.keys()

            返回一个包含字典中所有key的列表

        values

            a = dict.values()

            返回一个包含字典中所有值的列表


        items

            a = dict.items()

            返回一个包含所有(键、值)元组的列表


    字典的遍历

        格式:for...in...可以遍历字典,遍历可用的数据类型:字符串、列表、元组,字典


        遍历字典的key(键)

            for key in dict.keys:

                print(key)


        遍历字典的value(值)

            for value in dict.values:

                print(value)


        遍历字典的项(元素)item

            for item in dict.items():

                print(item)


        遍历键值对

            for key,value in dict.items():

                print(key,value)


集合介绍

    Set={}

    集合是一个无序,元素是唯一,集合一般用于元组或者列表的元素的去重


    添加 add

    Set={1,2,4,5}

    A = Set.add(3)

    Print(A)


    Update 把元素拆分,作为个体传入到集合中

    Set.update(“789”)


    删除元素

    Remove pop discard

    Remove:删除集合中的元素,有则删,没有就报错

    Pop 随机删除集合中的元素,set中有则删,没有就报错

    Discard 删除集合中的元素,有则删,没有就不做任何操作


    集合最常见的用法:交集跟并集(&  |)

    交集------且

    Set1={1,2,3,4}

    Set2={3,4,5,6}

    Set3 = set1 & set2

    Print(set3) 

    >>>{3,4}


    并集------或

    Set1={1,2,3,4}

    Set2={3,4,5,6}

    Set3 = set1 | set2

    Print(set3) 

    >>>{1,2,3,4,5,6}

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