《Python编程:从入门到实践》学习汇总

Pycharm使用方法:
    Debug:  开始Debug:shift+F9
            Debug到下一个断点:F9或F8
            停止:Ctrl+F2
            查看调试时的变量信息看下方信息栏的Debugger;查看输出看Console

Python编程:从入门到实践
    python对于一个变量名并不作固定的数据类型绑定,当存入数据形式为字符串时,它就是一个字符串,当存入一个int时,它就是一
        int,而再放入一个字符串/列表/集合时,它又变成了一个字符串
    Python中的变量(包括字符串)拷贝存储方式与c相同,但直接在列表,元组,字典间赋值时要注意了,默认为浅拷贝
    通用函数:
        list(?)         转化为一个列表
        str(int num)    返回值为和num相同的字符串
        sorted(iterable) 对iterable列表排序,但对原列表不作任何改变,会返回排序后的列表
        len(iterable)   获取iterable列表的长度,返回值即为其长度
        max/min(iterable) 返回列表中元素的最大值/最小值
        sum(iterable)   返回列表中元素的值的总和
        set(list)       将列表转化为集合
        raw_input('str')    先输出str作提示信息,再进行输入操作,返回值为输入内容所表示的字符串
        int('str')      将str所表示的内容转换成int类型的数据



Python 笔记
1.
    1.2
        1.2
            字符串的加法,减法
        1.2.3
            字符串的切片(str[0:3])(str[-3:-1])
        1.2.4
            字符串高级方法(类似字符串对象内的函数)
                标题大写:   .title()    str.title()     将每个空白字符的后面的字符换成大写
                大小写:    .upper(),.lower()       全部切换成大写或小写
                切割\分离:     .spilt()    str.spilt('分隔符')  返回值是一个一维字符串的列表,字符数组的行数取决于字符串被分拆成了几段;
                                                        分隔符可以是单个字符,也可以是一个字符串
                替换:     .replace()  str.spilt('str_before','str_after') 返回值为以为字符数组
                去两端空字符:     .strip()    str1.strip('str2')    返回值为字符串,其中会除去str1中所有str2含有的字符,如果不加参数str2,
                                                        则自动去除str2两边的空格字符
                .lstrip()/.rstrip()   str1.lstrip/strip('str1')  返回值也为字符串,和上面基本相同,但只会去掉开头的/末尾的
                查找:     (str1 in str2/iterable2)    返回值为一个布尔值,常用在选择结构中

                .formate()  str1.formate('str2')    将str1中的所有{ }替换为str2,返回值为替换后的字符串

                list1=list2     则将list2的地址赋予list1,只进行浅拷贝
                list1=list[:]   则新生成一个列表,进行深拷贝
                //////////
                随机讲的野生函数
                    print()         类似c++中的cout<<,可以直接输出字符串(不管几维)和数字,后面自动接了一个换行符

                    range(a,b)  表示从a到b的list(官方语言为集合),从a开始小于b
                    len(list1)  返回list1的长度
                    zip(list1,list2...) 提供list1和list2中元素的一对一映射集合,放在另一个地方,返回值为其地址,若对所得
                                    地址再用一次zip,则返回n个值,分别是之前的各个list;
                //////////
    1.3结构
        1.3.1
            1. 函数,注意print会(返回并[可能错了])输出,而return 只会返回;并且,print并不是函数的终点,只有return才是函数的终点
            定义格式:
            def function_name(parameter):
                '''something to describe the function'''
                function_content
                return something
            2.  Python传参也可以使用默认参数(这里叫参数默认值),不过仍然要把有默认参数的放在最后面.
                    Python传参方式默认方式: 对变量(包括字符串)默认是值传递,对列表之类的默认是地址传值(也算是值传递)
            3.传递任意数量的实参:
                传一个元组:多个单参数
                   def function(*parameter):
                      '''这样定义参数列表后,函数会将任意数量的参数装入一个元组,该元组的名字就是形参的名字)'''
                      '''若这种方法和单个数的形参一起使用,应该将任意数量的放后面,这样Python会先匹配单参数'''
                      '''如果和带默认值的参数混用,python会先填满带默认值的参数'''
                      balabala
                      return something
                传一个字典:多个键-值对:
                   def function(**parameter):
                      '''调用方式:示例:function(key1=value1,key2=value2,key3=value2)'''
                      '''会生成一个字典,填满'''
                      balabala
                   return
            4. python传参新方式:
                关键词传参:
                    例:在函数中定义的形参列表为:(animal_name,animal_type);调用参数时,可以将实参列表写为(animal_type=
                        hamster,animal_name=niko);python 会自动匹配好参数。
            5.  import关键字
                Python中的import机制:
                    import语句:
                        方式1:    [from \\\filename] import function_name1 [as new_function_name],function_name2(这样就
                                    能值引入某个文件中的某个特定函数)
                        说明: 1.[]表示是可选的,如果不加,就代表从当前目录引入头文件
                              2.from后面,一个点代表上一层目录,几个点代表几层,因此还有2层,3层....
                              3.当然还可以继续加具体的路径值,如:..\ProgramData\Microsoft\Windows\Start Menu
                              4.as就是作为的意思,那么在这个文件中使用as的名字时,就用了它原来的名字的函数
                              5.可以写成[from \\\filename] import *,导入该文件中的所有函数
                        方式2:    [from \\\filename的父文件夹] import filename1 [as new_filename1],filename2
                              1.1.[]表示是可选的,如果不加,就代表从当前目录引入头文件
                              2.from后面,一个点代表上一层目录,几个点代表几层,因此还有2层,3层....
                              3.当然还可以继续加具体的路径值,如:..\ProgramData\Microsoft\Windows\Start Menu
                              4.as就是作为的意思,那么在这个文件中使用as的名字时,就用了它原来的名字的文件
                    import对类的导入:与上述相同,把函数名改成类名
                    import之后的使用:
                        如果是filename里的function函数,则用filename.function(参数列表)调用
            6.Python之禅之函数
                应在定义每个函数之后写好关于这个函数的注释
                如果参数太多,勇敢地换行
                除开头写了注释外,import都尽量写开头           if flag:
                balabala
            [else:
                balabala]
             and相当于&& or相当于||
             新逻辑运算符:   in和not in
             (item in iterable)相当于[在iterable中存在/找得到item]

             布尔数据类型:定义变量时赋值True或false即可
        1.3.3
             for item in iterable:
                do
             item在iterable中一次变换,执行do
             例如 for i in range(0,10)
             print(i)
             就是输出0~10
             关键字 continue 和 break
             可以直接用iterable名的值表示其是否为空545
    1.4
        1.4.1列表
            乘方运算符**
            列表:names=['a','b','c','d','e'];
            追加函数:   names.append(str)  相当与names.pushback(),在尾部增加一个字符串
            插入函数:   names.insert(n,element) 在names[n-1]和names[n]之间插入element
            删除函数:   names.pop(n)    除去names[n],如果没有指定n,则除去最后一个元素;
                                        返回值为弹出的元素
                        names.remove(element)   找出names中第一个完全和element相同的元素,将其除去(是否还有相同的就不管
                        了);无返回值
                        del||||这是一个关键字||||| names[n]
            拼接函数:   names.extend(list2) 在names的后面接上list2的所有元素
            清空:       names.clear()
            排序:       names.sort()  字典序排序,会改变names列表的顺序
                        names.sort(reverse=True) 字典序倒序排序
            反转:       names.reverse() 将原列表反转
            查找函数:   names.index(element)  找出names中第一次出现的和element相同的元素的下标
            统计次数:   names.count()
            列表解析:   squares = [value**2 for value in range(1,11)]

            多重循环:   python: for i,j in zip(list1,list2)
                        c++   : for(int item1=list1[0],item2=list2[0],i=0;
                               i 
 

你可能感兴趣的:(学习笔记)