Python--一些重要的小tips【持续更新】

在runoob.com点击访问进行Python学习时的一些笔记和心得

1-字典格式{ }

    列表格式[ ]

    元组格式( )

2-<>用于表示不等,返回bool值

    ^用于计算位异或

   <<非循环左移

   pi和e都是可以直接使用的

   degrees(x)弧度转角度

   radians(x)角度转弧度

   数字输出格式化,表格来自runoob.com

3.1415926{:.2f}3.14保留小数点后两位
3.1415926{:+.2f}+3.14带符号保留小数点后两位
-1{:+.2f}-1.00带符号保留小数点后两位
2.71828{:.0f}3不带小数
5{:0>2d}05数字补零 (填充左边, 宽度为2)
5{:x<4d}5xxx数字补x (填充右边, 宽度为4)
10{:x<4d}10xx数字补x (填充右边, 宽度为4)
1000000{:,}1,000,000以逗号分隔的数字格式
0.25{:.2%}25.00%百分比格式
1000000000{:.2e}1.00e+09指数记法
13{:10d}        13右对齐 (默认, 宽度为10)
13{:<10d}13左对齐 (宽度为10)
13{:^10d}    13中间对齐 (宽度为10)
11
'{:b}'.format(11)
'{:d}'.format(11)
'{:o}'.format(11)
'{:x}'.format(11)
'{:#x}'.format(11)
'{:#X}'.format(11)
1011
11
13
b
0xb
0XB
进制

3-注意使用:符号,用于表示{ },进行函数体的编写,在编写时也需要注意缩进,必须保持一致,可以使用Tab进行调整

   in / not in 用于对当前元素是否存在在列表、元组、字符串中进行判断

   使用print语句时,在句末加入,符号,可以实现不换行

   使用elif实现else if功能

   使用:实现C语言中的{ }功能

   可以使用索引实现对元组、列表和字典的访问,其中索引使用if num in range( len(变量名的形式)),使用时采用变量名[num] 的形式进行访问

   无限循环在控制台中使用CTRL+C实现停止操作

   pass就只是为了实现占位,本身并没有任何意义

4-注意区分is和==的意义,虽然都是进行比较,但is比较的相当于存储位置,==比较的是值

   使用choice(range(num))实现随机返回一个0~9之间的整数

   uniform(x,y)实现随机返回一个在x~y之间的实数

5-在for或while后加入else可以实现在循环结束后跳出进行下一步操作

   由于开始时语法真的是太不熟悉了,所以在使用__init__进行定义时不停的跳object()takes no parameters的error,也提示一下后来的小朋友们,__符号它是英文半角_*2是两条啊

6-字符串,在行尾加入\表明续行

    \a表示响铃

    \b表示退格

    \v纵向制表符

     \t横向制表符

    在‘’符号前加入r或R表示反转译,所有的转义符都不会被执行

   在Python中同样可以输出类似C语言的格式化输出,举个栗子print “auihfui%d,joisdofa%s”%(12,‘nihongwa’),下面的表格就是可以使用的格式化内容,因为感觉整理的不错就直接从runoob.com上拿下来啦

      %c 格式化字符及其ASCII码
      %s 格式化字符串
      %d 格式化整数
      %u 格式化无符号整型
      %o 格式化无符号八进制数
      %x 格式化无符号十六进制数
      %X 格式化无符号十六进制数(大写)
      %f 格式化浮点数字,可指定小数点后的精度
      %e 用科学计数法格式化浮点数
      %E 作用同%e,用科学计数法格式化浮点数
      %g %f和%e的简写
      %G %f 和 %E 的简写
      %p 用十六进制数格式化变量的地址
    还可以使用.format代替%实现相同的操作,甚至可以实现指定位置的显示,具体使用格式如下,“{ },{ }”.format("内容1","内容2")

    也可以采用参数设置的方法,有三种方式,分别为直接参数方式、字典方式以及列表方式。直接参数方式采用将变量名放置在{}中,在.format()中进行对变量定义的方式;采用字典设置参数的方法,先对字典进行定义,在引用时,直接使用字典关键字,并在.format()中对该字典进行引用,以(**字典名)为格式;列表采用类似字典的方法,不同之处在于前半部分的{}采用名加[索引]的方式,.format直接使用列表名

    甚至可以使用str.format()的方式传入对象,没太看懂,所以直接使用runoob.com中使用的例子。

            class AssignValue(object):

                    def __init__(self,value):

                           self.value=value

             my_value=AssignValue(6)

             print('value 为:{0.value}'.format(my_value))

     可以使用{ }符号对{ }进行转译      

     在字符串定义的时候,可以使用三引号实现对字符串内容的换行定义

     对字符串中的数字处理,isdigit()和isdecimal()函数都是用于检测内容是否为数字,返回bool值,

对isdigit()而言,True:Unicode数字、byte数字(单字节)、全角数字(双字节)、罗马数字

                                   False:汉字数字

                                   Error: 无

对isnumeric()而言,True: Unicode数字,全角数字(双字节),罗马数字,汉字数字

                                           False: 无

                                           Error: byte数字(单字节)

     使用find函数与rfind函数都是可以进行查找操作的,不同支持在于一个是从左边开始找,一个是从右边开始找,但是要找的目标字符串都是从左到右开始定义的

     使用splitlines当传入参数为False时,在打印结果时,将不包含\n转义符,如果使用True,则会将转义符打印出来


      标题化表示所有单词都以大写字母开头,其余字母小写

7-通过使用del函数,实现对列表中元素的删除

    使用+实现对列表的拼接、组合

    在截取中,使用正值从0开始计数,使用负值,则最后一位为-1

    使用list()可以将元组转换为列表

    使用append()在列表末尾添加新的对象

    使用extend()可以使用新的列表对旧的列表进行扩充

    使用remove(obj)移除列表中obj的第一个匹配项

    使用pop(obj=list[-1])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

8-在创建元组时,如果该元组最后只有一个元素,需要在最后加入一个逗号

    元组一旦创建将无法修改,可以通过使用del将整个元组进行删除

    对于任意无符号对象,以逗号隔开,默认为元组

    使用tuple()将列表转化为元组

9-字典在创建后也可以进行修改

    使用del将删除字典中的一条条目,使用.clear()将清空字典中的所有条目

   .keys()将返回字典中所有的键;.values()将返回字典中所有的值

10-使用.localtime(time.time())可以获得当前时间,但显示并非格式化形式,使用asctime()可以获得可读时间模式,调用方式为time.asctime(time.localtime(time.time()))

      可以使用time模块的strftime方法对日期进行格式化,和print进行搭配使用,用于定义用户自己的显示格式如:print time.strftime("%a %b %d %H:%M:%S %Y,time.localtime()),其中Python日期格式化符号可以在编写时进行查询

     time.clock()用于返回CPU时间,可以用于衡量程序的耗时状况

     time.sleep(secs)用于推迟线程运行时间

      与time很像的calendar模块用于获取月历信息,如calendar.month(year,month)将返回该月的日历

11-使用def进行对函数的定义,无论最后是否返回内容,都需要在最后加入return,表示函数结束

     在函数中使用参数传递时,变量并没有类型,它只是一种容器用于存放对象的地址

     传入的参数存在会发生变化和不会发生变化的内容,除列表和字典外其余变量在传入后不会发生变化

     使用关键字作为参数传入时,可以不完全按照定义时传入参数的顺序进行参数的传入,函数可以识别关键字

     甚至可以使用不定长参数,使用加*号的变量用于存放所有未命名的变量参数,但对于不定长参数,要在函数后面记得处理

     使用lambda关键字创建匿名函数,例sum=lambda arg1,arg2:arg1+arg2;调用时直接使用sum(1,2)即可

12-可以使用.py后缀形成模块,并且使用import语句引入模块,其格式为import module1[,module2[,...moduleN]]]

     在使用引用模块中的函数时,调用格式为模块名.函数名

     使用from从模块中导入一个指定的部分,from fib import fibonacci 表示从fib模块中导入fibonacci函数,如果导入全部内容,则使用from fib import *

     搜索路径为system模块的sys.path变量中,可设置PYTHONPATH变量 set PYTHONPATH=c:\python27\lib;

     如果要给函数内部的全局变量赋值,需要在全局变量前加入global关键词

    使用dir函数,可以返回模块中定义过的函数的名字,其中__name__和__file__分别指向模块的名字和该模块的导入文件名

    使用globals()函数返回该函数中所有能访问的全局名字,使用locals()函数返回该函数例能访问的命名

    由于每次模块顶层的代码只会被执行一次,因此如果希望重新执行模块顶层使用的代码,可以使用reload()函数,reload(hello)

    创建Python包,在包文件下创建许多的模块,在导入时使用from语句,from包.py模块名import函数名

13-使用raw_input和input函数可以实现从键盘输入的功能,raw_input("提示语句:"),返回键入内容,使用input()如果传入的参数外面加上了[ ]符号,则Python会对其进行运算,并将计算结果进行返回

      使用open()函数创建一个file对象,并使用相关的方法对其进行调用读写,file object=open(file_name[,access_mode][,buffering])file_name表示文件名称字符串值,access_mode表明文件打开方式,buffering表示寄存行大小,0没有,1有,大于1表明寄存区缓冲大小,下表来自runoob.com,点击访问

r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
    使用file.closed关闭文件,file.mode打开文件访问模式,file.name返回文件名称

    使用write()将字符串等写入打开的文件,该函数不会再字符串结尾自动添加换行符

    使用read(count)读取文件中的字符串,如果指定count,会按照字节数进行读出,如果参数为空,则尽可能多的读取内容,无法确定读取长度

    使用tell()返回当前操作位置

    使用seek(offset[,from])可以用于改变当前操作位置,from设置为0,则从文章开头开始,设置为1,则从当前位置开始,设置为2,则以文件末尾开始 

    os模块可以对文件进行操作,rename()用于重新命名文件,需要先导入,os.rename(current_file_name,new_file_name)

    remove()用于删除文件,文件名作为参数

    mkdir()在当前目录下重新创建新的目录,os.mkdir("newdir")

    rmdir()删除目录,参数为要删除目录名称

    chdir()可以用于改变当前目录,直接写入目录路径即可

    getcwd()返回当前工作目录


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值