Python开发IDE
PyCharm,eclipse
PyCharm的基础用法
全部选中后 Ctrl+?全部变为注释
运算符
结果为值的运算符
算术运算符:
+ - * / % // **
赋值运算符:
count = count + 1 <==> count += 1
count = count - 1<==> count -= 1
count = count * 1<==> count *= 1
count = count / 1<==> count /= 1
......
结果为布尔值的运算
比较运算:
==等于 >大于 <小于 >=大于等于 <=小于等于 != <> 不等于
成员运算:
in和not in:判断某个东西是否包含在某个东西里面(判断子字符串(子序列)是否在字符串中),结果是布尔值
name = 'Jennifer'
"""'Jennifer'字符串
其中单个J字符
但是'J'是由单个字符构成的字符串"""
if 'J' inname:print('Yes')else:print("no")
逻辑运算:
not 取反 and且 or或
运算的顺序:
先计算括号内
再从前到后
True+or→True
True+and→继续判断
False+or→继续判断
True+and→False
数据类型
数字
#Python3中,不管多少位数字、多大值都是int类型
#Python2中,整型int类型和长整型long类型
所有功能都在int里。 输入int,选中后按住Ctrl键即可查看
int(a,base=b)
将字符串以b进制的数字转换为10进制.
a.bit_length()
将这个数转换为2进制表示的最少位数
布尔值
bool
字符串
str类型,一旦创建不可修改,一旦修改或拼接,都会重新生成新的字符串
.replace()
按照设置进行指定的替换
1 m = "abcabcabc"
2 m1 = m.replace("ab","12")3 m2 = m.replace("ab","12",2)4 print(m1,m2)5 """
6 12c12c12c 12c12cabc7 """
.capitalize()
首字母大写
.casefold() 或者 .lower()
变小写,但前者功能更全面,后者有局限性
.center(self, width, fillchar=None)
设置宽度,并将内容居中
fillchar=None,说明可以不用填,默认“None”
width说明必须填写
1 e = 'abcd'
2 e1 = e.center(20,"*")3 print(e,e1)4 #abcd ********abcd********
.ljustr(self, width, fillchar=None)
设置宽度,并将内容至于最左
1 e = 'abcd'
2 e2 = e.ljust(20,"%")3 print(e,e2)4 #abcd abcd%%%%%%%%%%%%%%%%
.rjustr(self, width, fillchar=None)
设置宽度,并将内容至于最右
e = 'abcd'e3= e.rjust(20,"^")print(e,e3)#abcd ^^^^^^^^^^^^^^^^abcd
.zfill()
设置宽度,内容置于最右,并用0填充
1 e = 'abcd'
2 e4 = e.zfill(20)3 print(e4)4 #0000000000000000abcd
.count()
去字符串中寻找子序列出现的次数,可设置起始位置和终止位置
.find()
从开始往后找,获取其第一次出现的位置。找不到返回-1
一般来说,指定查找区间为≥和<
.index() ——避免使用
从开始往后找,获取其第一次出现的位置,若找不到直接报错
.format()
格式化,将一个字符串中的占位符替换为指定值。占位符既可以是对应关系,也可以是0,1,2...
test = 'I am {name}'v= test.format(name = 'Alex')print(v)#I am Alex
1 test = 'I am {name}, like {hobby}!'
2 v = test.format(**{"name":"Jenny","hobby":"sleeping"})3 print(v)4 #I am Jenny, like sleeping!
.format_map()
test = 'I am {name}, age {a}'v= test.format_map({"name": "Alex", "a":13})print(v)#I am Alex, age 13
test = 'I am {name}, age {a}'v= test.format_map({'name': 'Alex', 'a':13})print(v)#I am Alex, age 13
.isalnum()
判断字符串中是否只包含字母和数字,返回布尔值
.isalpha()
判断字符串中是否只包含字母(包括汉字),返回布尔值
.isnumeric() 或 .isdigit() 或.isdecimal()
判断字符串中是否只包含数字,返回布尔值,普适性由高到低排列,比如第一个识别中文二,中间的可以识别②,而最后一个这些都不识别
.startswith() 或.endswith()
判断是否以xx开始或以xx结尾,结果返回布尔值
.isientifier()
判断是否是标识符,标识符即字母、数字和下划线组成的变量
1 a = 'kez_1'
2 x =a.isidentifier()3 print(x,a)4 #True kez_1
.isprintable()
判断是否包含不可见的字符,\t \n都不可见
.isspace()
判断是否全部是空格
.istitle()
判断是否每个单词都首字母大写
1 b = 'I Am Jennifer'
2 b1 =b.istitle()3 print(b1,b)4 #True I Am Jennifer
5 c = 'I am Jennifer'
6 c1 =c.istitle()7 print(c1,c)8 #False I am Jennifer
.title()
将字符串改成标题型
1 d = 'a cute dog'
2 d1 =d.title()3 print(d1)4 #A Cute Dog
.islower().lower()
判断字符串是否全是小写 及 将字符串全部转化为小写
.isupper() .upper()
判断字符串是否全是大写 及 将字符串全部转化为大写
.swapcase()
大小写字母相互转换
1 m = "English IS poor"
2 m1 =m.swapcase()3 print(m1)4 #eNGLISH is POOR
.lstrip() .rstrip() .strip()
去除左、右或左和右的空白和\n和\t,也可以指定去除最长公共子序列(比如字符块)
1 e = 'ab cd'
2 e1 =e.lstrip()3 e2 =e.rstrip()4 e3 =e.strip()5 print(e)6 print(e1)7 print(e2)8 print(e3)9 """
10 ab cd11 ab cd12 ab cd13 ab cd14 """
1 f = 'abcdab'
2 e1 = f.lstrip('ab')3 e2 = f.rstrip('hhab')4 e3 = f.strip('lab')5 print(f)6 print(e1)7 print(e2)8 print(e3)9 """
10 abcdab11 cdab12 abcd13 cd14 """
.maketrans() .translate()
设置对应关系,并用对应关系进行相应替换
1 initial_code = "一二三四五"
2 final_code = "12345"
3 m =str.maketrans(initial_code,final_code)4 v = "一个小朋友买了五朵花另外三个小朋友买了四个花盆"
5 new_v =v.translate(m)6 print(new_v)7 #1个小朋友买了5朵花另外3个小朋友买了4个花盆
.partition() .rpartition().split() .rsplit()
按照一定规则分割
1 m = "1*2*3*4*2+3*4+5*50"
2 m1 = m.partition("*")3 m2 = m.rpartition('*')4 m3 = m.split('*')5 m4 = m.rsplit('*',4)6 print(m1)7 print(m2)8 print(m3)9 print(m4)10 """
11 ('1', '*', '2*3*4*2+3*4+5*50')12 ('1*2*3*4*2+3*4+5', '*', '50')13 ['1', '2', '3', '4', '2+3', '4+5', '50']14 ['1*2*3', '4', '2+3', '4+5', '50']15
16 """
.splitlines()
True False:是否保留换行
1 m = "English\nis\treally\nfun"
2 m1 =m.splitlines()3 m2 =m.splitlines(False)4 m3 =m.splitlines(True)5 print(m1)6 print(m2)7 print(m3)8 """
9 ['English', 'is\treally', 'fun']10 ['English', 'is\treally', 'fun']11 ['English\n', 'is\treally\n', 'fun']12
13 """
.expandtabs()
依据括号内的数字断句,适合做表格
1 test = '1234567\t123456789\tabcd'
2 v = test.expandtabs(6)3 print(v)4 #1234567 123456789 abcd
5 #第一个空了五格,第二个空了三格
6 information = 'jenny\tfamale\tjenny@126.com\ncc\tmale\t\cc@qq.com\nkat\tfemale\tkattie@163.com'
7 v = information.expandtabs(15)8 print(v)9 """
10 jenny famale jenny@126.com11 cc male \cc@qq.com12 kat female kattie@163.com13
14 """
.join()
将字符串的每个元素按照指定分隔符进行拼接
1 e = '你是风儿我是沙'
2 t = '_'
3 e1 =t.join(e)4 print(e1)5 #你_是_风_儿_我_是_沙
6 e2 = '*'.join(e)7 print(e2)8 #你*是*风*儿*我*是*沙
索引,下标 ,切片
获取字符串中的某一个字符或某个字符串
1 m = "english"
2 m1 =m[0]3 m2 = m[1]4 m3 = m[0:4]5 m4 = m[0:-1]6 m5 = m[1:-1]7 print("1th:",m1,"2nd:",m2,"1th~4th:",m3,"first~the next to last:",m4,"2nd~ the next to last:",m5)8 """
9 1th: e 2nd: n 1th~4th: engl first~the next to last: englis 2nd~ the next to last: nglis10 """
len('abcd')
获取当前字符由几个字符组成,用在列表中是获取当前列表的组成元素个数(用“,”分开的部分)
注意:Python 3 中 一个中文是一个字符
Python 2 中一个中文是三个字符
1 m = "我是一个女侠"
2 index =03 leng =len(m)4 while index