Python学习(三)——Python的运算符和数值、字符的类中方法

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' in name:
    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 12c12cabc
7 """

.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()  

  判断是否包含不可见的字符,   都不可见

.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()  

  去除左、右或左和右的空白 也可以指定去除最长公共子序列(比如字符块)

 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 cd   
11 ab cd   
12    ab cd
13 ab cd
14 """
 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 abcdab
11 cdab
12 abcd
13 cd
14 """

.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
is	really
fun"
 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	really', 'fun']
10 ['English', 'is	really', 'fun']
11 ['English
', 'is	really
', 'fun']
12 
13 """

.expandtabs()  

  依据括号内的数字断句,适合做表格

 1 test = '1234567	123456789	abcd'
 2 v = test.expandtabs(6)
 3 print(v)
 4 #1234567     123456789   abcd
 5 #第一个空了五格,第二个空了三格
 6 information = 'jenny	famale	jenny@126.com
cc	male	cc@qq.com
kat	female	kattie@163.com'
 7 v = information.expandtabs(15)
 8 print(v)
 9 """
10 jenny          famale         jenny@126.com
11 cc             male           cc@qq.com
12 kat            female         kattie@163.com
13 
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: nglis
10 """

len('abcd') 

  获取当前字符由几个字符组成,用在列表中是获取当前列表的组成元素个数(用“,”分开的部分)

  注意:Python 3 中 一个中文是一个字符

     Python 2 中一个中文是三个字符

 1 m = "我是一个女侠"
 2 index = 0
 3 leng = len(m)
 4 while index < leng:
 5     print(m[index])
 6     index += 1
 7 print("==========")
 8 """
 9 10 11 12 13 14 15 ==========
16 """

for循环:

for 变量名 in 字符串,索引切片都能用

 1 m = "我是一个女侠"
 2 for lala in m:
 3     print(lala)
 4 """
 5  6  7  8  9 10 
11 """

range(x)

  创建连续的数字,默认步长为1、大于等于0,小于x的整数,也可以设置步长来指定不连续数

将range(x)与for in结合起来,可以将索引打出来。

 1 m = input(">>>")
 2 m1 = range(len(m))
 3 for item in m1:
 4     print(item,m[item])
 5 """
 6 >>>abcdefg
 7 0 a
 8 1 b
 9 2 c
10 3 d
11 4 e
12 5 f
13 6 g
14 """

 

列表

list

元组

tuple

字典

dict

原文地址:https://www.cnblogs.com/jennifer224/p/12321553.html