默认教学计划
929人加入学习
(28人评价)
Python 基础
价格 ¥ 299.00
该课程属于 高校公益行 | 网络安全实践训练营 请加入后再学习

字典:用{}表示,例如dict={'b':98,'B':66}

key:value

dict[key]=value用于赋值

del dict[key]用于删除

dict.keys()可查看所有key,同理value

list(dict.keys())可将所有的key转化为表,同理value

max/min(dict)用于比较键的大小

用max/min(zip(dict.values(),dict.keys()))用于比较值的大小

 

[展开全文]

字符串的方法:方法调用

大小写的函数:S.capitalize()/S.title()/S.upper()/S.lower()/S.swapcase()

排版相关函数:S.centerr(width[,fill])/S.ljust(width[,fill])/S.rjust(width[,fill])/S.expandtabs(tabsize)//转换空格的数量

查找相关函数:S.startswith(prefix[,start[,end]])//以特定字符串开头,返回真假

s.find(sub[,start[,end]])//查找第一个与sub匹配的字符串位置,没找到返回-1

格式判断函数:S.isalpha()--判断是不是字母

S.isdigit()--判断是否数字

字符分隔函数:S.split([sep[,maxsplit]])/S.rsplit([sep[,maxsplit]])--从左/右

 

[展开全文]

repr('a')==>"'a'"

'What do you like,{2},{1},{0}'.format('ham','spam','eggs')==>'What do you like,eggs,spam,ham'

'What do you like,{s},{e},{h}'.format(h='ham',s='spam',e='eggs')==>'What do you like,eggs,spam,ham'

'What do you like,{},{},{}'.format('ham','spam','eggs')==>'What do you like,ham,spam,eggs'

'%+10.2f' 123.123==>'123.12    '(+左对齐,-右对齐)

import sys                               sys.platform()显示系统平台               '{p.platform}'.format(p=sys)====  p.platform()

'{t[0]}'.format(t={'a','b','hello'})====> ' a'

'{:-^10}'.format('start')         ^表示居中'start'其他的用'-'(只能有一个字符)来填充40表示有40个字符                    <表示左对齐   >表示右对齐                    =的时候'start'必须是数字          '{:=10}'.format(-1)==>'-        1'    '{:=+10}'.format(1)==>'+        1'    '{:+10}'.format(10)==>'        +1'    '{: }'.format(10)==>' 10'            '{: }'.format(-10)==>'-10'

#只有在数字显示里,显示0b 0o 0x时用    '{0:#8b},{0:#8o},{0:#8x}'.format(10) =================>                    '  0b1010,    0o12,     0xa'

,是来表示数字时每三位加一个,

0是固定宽度下前面补0

[展开全文]

fnmatch不区分大小写,fnmatchcase区分大小写

[展开全文]

字符串 不可变序列,但是 是不可修改的对象

#-*-encoding=utf8-*-  正常使用中文

text.replace('char','char')

[展开全文]

Python里变量没有类型

变量 ——引用 ——对象

 

import sys

sys.getrefcount(X)某变量被引用的次数

[展开全文]

python3.x

a='aB\nC1234c5b6a.b'

a.capitalize() ==> 'Ab\nc1234c5b6a.b'     a.title() ==> 'Ab\nC1234C5B6A.B'         a.upper() ==> 'AB\nC1234C5b6A.B'         a.lower() ==> 'ab\nc1234c5b6a.b'         a.swapcase() ==> 'Ab\nc1234C5b6A.B'

b='123'(奇数个) c='1234'(偶数个)

b.center(6,'*') ==>'*123**'(居中函数)   c.center(7) ==> '  1234 '(前面有2个空格,后一)                                   a.ljust(5,' ')==>'123  '                 b.rjust(5,'-')==>'-1234'                 print('Hello\tworld')==>'Hello   world' print('Hello\tworld'.expandtabs(10))==> 'Hello     world'                                                                  '  Hello world   '.strip()==>      'Hello world'                           '  Hello world   '.lstrip()==>       'Hello world   '                         '  Hello world   '.strip()==>            '   Hello world'                                                           'abcaabbccHello worldaaccbb'.strip('[abc]')==>'Hello world'                                   'abcaabbccHello worldaaccbb'.lstrip('[abc]')==>'Hello worldaaccbb'                           'abcaabbccHello worldaaccbb'.rstrip('[abc]')==>'abcaabbccHello world'

'Hello world'.startswith('hello')【判断是否以hello开头】==>False            'Hello world'.startswith('ello',1)【从第一个元素开始判断是否以ello开头】==> True                                 'Hello world'.endswith('Rld')【判断是否以Rld结尾】==>False                 'Hello world'.endswith('Rld',1)【去掉第一个元素,判断是否以Rld结尾】==>False  

'hello world'.count('l')==>3         'hello world'.count('ll')==>1         

'hello world'.find('l')==>2【找到第一个l,并输出其所在位置】                   'hello world'.rfind('l')==>9【从右边开始找】                                  'hello world'.find('a')==>-1(未找到则返回-1) // index()函数会返回错误

'hello'.replace('l','L',1)将第一个l换为L

python 2.x 3.x

S.isalpha()判断是否是纯字母           S.isdigit()判断是否是纯数字           S.isalnum()判断是否是数字加字母       S.islower()判断是否有字母且全是小写   S.isupper()判断是否有字母且全是大写   S.isspace()判断是否只有空格和换行符   S.title()判断每个单词的第一个字母是不是大写

python 3.x

S.isdecimal()判断是否是纯数字           S.isnumeric()判断是否是纯数字         S.isidentifier()判断字符能否成为标识符 S.isprintable()判断字符是否全部能打印出来

'Hello world'.split()==>['Hello','world']                     'Hello    world'.split(' ')==>['Hello',' ',' ','world']

'Hello\nworld\rhello'.splitlines()==>  ['Hello','world','hello']

'http://myweb.com'.partition('://')==>('http','://','myweb.com')

'http://myweb.com/1st/2nd/3rd/file.name'.rpartition('/')==>('http://myweb.com/1st/2nd/3rd','/','file.name')

'-'join('abc')==>'a-b-c'

 

python3.x

map={97:'A'}                         "a".translate(map)==>'A'

[展开全文]

运算符应用:

类型升级

应用于整数——位运算符

 

pow()幂函数

sqrt()平方根

round()四舍五入

cmp()比较

 

[展开全文]

bin()转二进制

oct()转八进制

hex()转十六进制

 

repr()交互模式下显示

 

3+5j表示复数

 

3/6.0   正确显示

**平方

 

[展开全文]

优点:

简洁可读性高

动态语言

可移植

标准库的支持

 

使用场景:

系统编程

GUI

Internet脚本

数据库编程

数值计算

游戏、图像、AI

 

.pyc编译后的.py文件 

 

"""表示段落

#表示注释

[展开全文]

转义字符 \  

\newLine

\\反斜杠

\"双引号

负数坐标表示倒过来

ord()把字符转换成数字

chr()把数字转换成字符

Python 2 直接使用中文会出错

字符串可以直接比较大小

[展开全文]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[展开全文]

字符串方法

字符串格式化表达式

字符串操作

字符串输出方法

除了表达式之外,字符串还提供了一系列的方法去实现更复杂的文本处理任务。方法是与特定的对象关联在一起的函数。从技术角度讲,它们附属于对象的属性,而这些属性不过是写调用函数罢了。在py中,表达式和内置函数可能在不同范围的类型有效,但方法通常特定于对象类型,例如,字符串方法仅适用于字符串对象

属性读取:

     Object.attribute格式的表达式可以理解为"读取object对象的属性attribute值"

函数调用表达式

     具有函数(参数)格式的表达式意味着"调用函数代码,传递零或者更多用逗号隔开的参数对象,最后返回函数的返回值"

这两者合并可以让我们调用一个对象方法

 

S.expandtabs(tabsize)改变默认的(8)tab键值

S.strip()去掉两边的空格(默认或者是指定的字符)lstrip  rstrip

S.split()以指定的字符分割字符串(默认以空格分割)

S.splitlines([keepends])以\n或者\r或者\r\n分割

S.partition(sep)从左或者右找第一个sep分割保留sep分隔符 一般用在分割网址时

join连接字符串

 

 

 

 

 

 

 

 

[展开全文]

字符串合并 用+即可

字符串的重复输出 可以使用*

使用in 或者not in来判断是否属于同一个字符串

分片操作每隔n个字符显示

例:text="ThisIsTestText"

text[::2]的结果是:'TiITsTx'

字符串代码转换:当我们需要对字符串大小写等操作的时候,需要对字符串转换成相应的代码。这个时候我们就需要两个函数:ord和chr。ord是把一个字符串转换成数字,chr是把数字转换成单个字符

unichr可以转换回去(转换为汉字)

replace 替换字符串 返回的是一个字符串

如果想要改变原来的字符串的话,需要对原来的字符串重新赋值

 

[展开全文]

把整数输出成非十进制数的时候,需要使用函数:

bin(i) 二进制  oct(i) 八进制  hex(i) 十六进制

i 是十进制数字

int('0b11111110',2)

254

 

[展开全文]

变量:一个系统表的元素,拥有指向对象的连接的空间

对象:分配的一块内存,有足够的空间去表示他们所代表的值

引用:自动形成的从变量到对象的指针

变量是存放指针的,因此变量没有类型

对象是存放数据的,所以对象有类型之说

因为对象是独立于变量的,当不再使用的时候是需要回收的

在python中两个变量可以共享一个对象,这个叫做共享引用 a=3  b=a  这个时候a跟b是共享对象3的

当a赋另一个值的时候,就会创建一个对象,a变量会引用新对象,而不是改变对象

==表示测试两个值是否相等

is表示两个值是否是同一对象

[展开全文]

random.modf(2.7) 浮点数的处理方法

(0.7000000000000002, 2.0)

math.log次函数为指数函数。默认e为底数  结果为浮点数。log10以10位底数。可以自定义底数

math.log(4, 2) = 2.0[第二个数是底数]

[展开全文]

不可变序列

#-*-encoding=utf8-*-这样python脚本就能用中文了

'a"b\'c'为a"b'c

"a\"b'c"为a"b'c

a='hello\这里加个空格不行

askdj'连在一起

\b光标往回

\f换页一列,但是在linux下用和\v效果一样,在windows下却奇奇怪怪

\v换行同一列

\r光标移到第一个位

\uhhhh,用16位16进制表示比如\u0041表示'A'

\u0000 0041也表示'A'不过是32位的

\xhh也一样16进制

\ooo八进制

len(a)可以看长度

\0表示空字符,不显示的

在py2中

len('中文')3个字符

len(u'中文')2个

'hi'*5

for c in a:print(c,end=' ')这样就不会换行了2.7要用这个功能要引入from __future__ import print_function

a[0:5]0到5或a[:5]开始不用写

a[-4:]结束不用写后面4个倒数最后一个a[-1]

a[::2]每两个显示一个a[1::2]1是开始的位置

a[::-1]从后面倒过来

a[::]和输出a一样间隔默认为1和a[::1]一样

a[-3:3:-1]表示逆向从-3到3

ord('a')换成数字py2.7不能用中文,加u就可以了

chr(89)数字转换成字母

unichr(2003)是中

2.7: unichr(u'啊')

a='dahl' 不能用a[1]这样来索引

text.replace('','')创建一个新值可用

text=text.replace来修改

 

 

 

 

[展开全文]

attribute属性

方法

“hellob”.capitalize() Hello

.title() Hello Hello

.会分割为两个单词,有数字不是单词

swapcase()大小写转换

'Hello'.center(7)

奇数个靠左

偶数个靠右

.center(7,'a')

ljust(7.'-')

.strip()默认删除两边空格和换行符

'helloworld'starstwith('hello',0,5)=='hello world'[0:5].startswith('hello')

'hello world'.startswith('hello',1)为false

有start才有end

.endswith('ld',4)只要结尾有那个字符串,如果只设单个数字的话大部分都是true因为结尾都为ld

\x00不可打印

‘http://myweb.com'.partition('://')

'-'.join(['dad','ad'] join多用于列表

map={97:'A'}

'a'.translate(map)可以将小写转换为大写

 

 

 

[展开全文]

变量是没有类型的,赋值时可以取代,会回收

对象有指向类型的指针

‘’和“”一样

【】列表

list=[1,2,3]

list[0]=24,1变为24

list2=list[:]复制,不是共享

is表示是不是同一对象

a=1 b=1.0 a is b为false

浮点数a=3.14 b=3.14 a is b为true

但是a=‘one’b='one' 为true

import sys

sys.getrefcount(1)本身就引用一次

很少的都是3

 

[展开全文]