学了这么久了,想总结一下python基础性知识,写的不好或者不对的地方,大家也可以留言让其补充、修改:


1. 字符串的定义:(ctrl+/)注释/取消注释
单引号、双引号、三引号(其中三引号也可以用来做注释)
str  = "aad222"
str = 'ss22'
str = ''' ss222'''
2. 字符串拼接(+号)
print('hello'+'world')     ----   helloworld
print('hello'+'3')            ----   hello3
print('hello'*3)              ----- hellohellohello
print('hello '*3)             ----  hello hello hello
print(3,'hello')               ---  3 hello
几种报错的拼接字符串:
print('hello'+3) ---  报错。类型不一致。和前面的保持一致(typeerror:must be str,not int)
print(3+'hello') ---  报错,类型不一致。和前面保持一致(typeerror:unsupported operand type(s) for +:'int' and 'str')
3.序列操作
序列定义:一个序列,若干个元素组成;一般下标从0开始
常用操作:
a.获取元素
str[10]/str[len(str)-1]/str[-1]
b.求元素个数
len(str)
c. 获取某元素的下标
str.index('b')
d.切片操作
string[start:end]:从start开始,到end结束,但不包含end
string[start:]:从start开始,到字符串结束
string[:end]:从第一个字符开始,到end位置结束,但不包括end
string[start:end:步长]:步长默认是1
字符串倒序:string[::-1]
正下表:从左向右:0,1,2,3,4
负下标:从右向左:-1,-2,-3,-4
in : 成员运算符 - 如果字符串中包含给定的字符返回 True
可以使用find方法,不等于-1则表示找到
例如:   str = 'hello'
'h’ in str  ----- True
not in : 成员运算符 - 如果字符串中不包含给定的字符返回 True
例如: str = 'hello'
'a'  not  in  str   --  True
r/R : 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前                加上字母"r"(可以大小写)以外,与普通字符串有着几乎完全相同的语法。
例如: open(r"d:\project\aa.txt")
% :  格式化字符串
4.Python转义字符
\(在行尾时)
续行符
\\
反斜杠符号
\'
单引号
\"
双引号
\a
响铃
\b
退格(Backspace)
\e
转义
\000
空
\n
换行
\v
纵向制表符
\t
横向制表符
\r
回车
\f
换页
\oyy
八进制数,yy代表的字符,例如:\o12代表换行
\xyy
十六进制数,yy代表的字符,例如:\x0a代表换行
\other
其它的字符以普通格式输出
5.字符串常用的方法
1> str.count():计算字符串中包含多少个指定的子字符串
info = "abcdefa"
print (info.count('a')) ----  2
2> str.startswith():检查字符串是否以指定的字符串开头
info = "this is tom"
print (info.startswith("this")) --- True
3> str.endswith() :检查字符串是否以指定的字符串结尾
info = "this is tom"
print (info.endswith("tom")) --  True
4> str.find()  :返回指定的子字符串在字符串中出现的位置
"123456789".find("456") ----  3
"ok,good,name".find(',')  ---- 2 (有多个则返回第一个)
“ok,good,name”.find('o',3) -- 4(指定位置开始找,正序找)
“ok,good,name”.find('o',-1) -- 0(指定位置开始查找:倒序只找最后一个元素)
5> str.isalpha() :检查字符串中是否都是字母
"abc1".isaplha()   --  False
6> str.isdigit() :检查字符串中是否都是数字
"123123",isdigit() --- True
7> str.join():将sequence序列类型的参数的元素字符串合并(连接到一个字符串)
print("##".join(['i','like','play','football!'])) -- i##like##play##football
print("##".join(('i','like','play','football!'))) -- i##like##play##football
8> str.split():将字符串分割为几个子字符串,参数为分隔符,返回list列表
被分割的切点会被拿掉
info = 'name is tom '
print(info.split(' '))   ---- ['name','is','tom','']
9>  str.lower() :将字符串里面如果有大写字母的全部转为小写字母
10> str.opper():将字符串里面如果有小写字母的全部转为大写字母
11> str.replace():替换字符串里面指定的子字符串
info = "name is tom"
print(info.replace('tom','jack'))  ---  name is jack
12> str.strip() :将字符串前置空格和后置空格删除
"   good   ".strip()  --- 'good'
13> str.lstrip():去除前置空格
"   good   ".strip()  --- 'good    '
14> str.rstrip():去除后置空格
"   good   ".strip()  --- '     good'

6.字符串的格式化
1> %s,%d,%f,%x
a > %s:字符串
name ='tom'
age = 18
info = "名字是:%s,年龄是:%d"%(name,age)
print (info)
结果:名字是:Tom,年龄是:18
b> %d:十进制
‘%d’%56 --输出的是字符串‘56’
‘%10d’56 -- 最小宽度,不足空格补齐     -----  结果:‘ 56’
‘%010d’%56 -- 补零        ------     结果:'0000000056'
c> %f:浮点数
默认小数点后面6位
“%f”%3.1415926    --   3.141593
"%.3f"%3.141592   --   3.142
指定小数点后面位数
"%9.2f"%1234.567890   --   ' 1234.57'
"%09.2f"%1234.567890  --   '001234.57'
d> %x:无符号的十六进制,(x/X代表了转换后的十六进制字符的大小写)
"%x"%108 -- '6c'
"%X"%108 --'6C'
"%#X"%108 -- '0X6C'
"%#x"%108 -- '0x6c'
2> .format()
格式: format % values
format:是等待格式化的字符串,由包含%号的占位符的字符串组成的
values:可以是普通的数值对象、字符串对象
tuple,表示多个对象填充format里面的占位符%
a> 顺序填充:.format(name,age)值可以多但是不能少,输出格式左、右、中间对齐::< ,:>,^

b>  下标填值

c>  变量填值

d> 特殊用法,python3.6以后才可以使用,前面加f