1.变量:命名与使用
#!/usr/bin/env/ python
# -*- coding:utf-8 -*- name = 'liQM'
- 只能包含字母、数字或下划线;
- 第一个字符不能是数字;
- 简短且具有描述性;
- 不用关键字或函数名用作变量名,如:(class,break,and,while,for...)
2.字符串:字符串一旦创建,不可修改,修改或者拼接都会创建新的字符串。
print('hello world!')
- "hellow world!"即表示字符串,指引号中的内容。拼接多个字符串时,可在最后添加(sep = ‘ ’)进行隔开。
一、‘str’的方法(☆ 重点):
-
capitalize:返回的字符串第一个字母大写,其余小写。
def capitalize(self, *args, **kwargs)
例子:
name = 'jack'
test = name.capitalize()
print(test) 输出:
Jack -
☆ lower:返回的字符串字母全部转换为小写。(☆ upper:转换为大写。)
def lower(self)
例子:
name = 'jACk'
test = name.capitalize()
print(test) 输出:
jack -
center:返回以width值的总长度为中心的字符串,空白处填充的内容默认为无,下方使用‘*’号代替。(ljust / rjust :字符串在左边或右边,其它位置由指定元素替代 。)
def center(self, *args, **kwargs)
例子:
name = 'jack'
test = name.center(20,'*')
print(test) 输出:
********jack******** -
count:返回子字符在字符串中出现的次数,可选位置范围。
def count(self, sub, start=None, end=None)
例子:
name = 'jackjack'
test = name.count('a',2,6)
print(test) 输出:
1 -
☆ endswith(startswith):确定是否以某个字符作为结尾或开头,是:返回True,否:返回False(suffix:后缀) 。
def endswith(self, suffix, start=None, end=None) 结尾
def startswith(self, suffix, start=None, end=None) 开头例子:
name1 = 'jackjack'
name2 = 'jackjack'
test1 = name1.endswith('k')
test2 = name2.startswith('a')
print(test1)
print(test2) 输出:
True
False -
☆ find:从开始往后找选择范围内出现的子序列位置,未找到的值显示“-1”。(index:功能与‘find’类似,但未找到的值直接报错)
def find(self, sub, start=None, end=None)
例子:
name = 'jackjack'
test = name.find('k',5,8)
print(test) 输出:
7 -
☆ format:格式化,将一个字符串中的占位符替换为指定的值。
def format(*args, **kwargs)
例子:
test = 'i am {name}, age {age}' #'i am {0}, age {1}
v = test.format(name='alex',age=19) #test.format('alex',19)
#v = test.format(**{'name':'alex','age':19}) (使用字典)
print(v) 输出:
i am alex, age 19def format_map():
例子:
test = 'i am {name}, age {a}'
v = test.format_map({'name':'jcak', 'a':10})
print(v) 输出:
i am jcak, age 10 -
isalnum:检查字符串中是否只包含数字与字母。 (isalpha:字母; isASCII:ASCII; isdigit:数字; islower:小写; isupper:大写; isplace:空格;istitle:首字母大写)
def isalnum(self, *args, **kwargs)
例如:
name = 'jackjack123'
test = name.isalnum()
print(test) 输出:
True -
expandtabs:断句,以输入的值为断句的字符数,当遇到‘\t’时,自动补全不够的值。(\n:换行)
def expandtabs(self, tabsize=None)
例如:
name = 'username\tpassword\temail\nJack\t123\tjack@163.com\nMick\t456\tmick@163.com\n'
test = name.expandtabs(10)
print(test) 输出:
username password email
Jack 123 jack@163.com
Mick 456 mick@163.com -
☆ join:将字符串的每个元素按指定分隔符进行拼接
def join(self, ab=None, pq=None, rs=None)
例如:
test = '*万岁!'
t = '_'
v = t.join(test) #v = '_'.join(test)
print(v) 输出:
中_华_人_民_共_和_国_万_岁_! -
☆ strip:移除左右两边空格。(lstrip / rstrip :移除左边或右边空格。)
def strip(self, chars=None)
例子:
test = ' jack '
v = test.strip()
print(v) 输出:
jack (左右两边无空格) -
maketrans & translate :制定转换表并按照表的内容替换字符串中的每个字符。
def maketrans(self, *args, **kwargs)
def translate(self, *args, **kwargs)例子:
'''test = 'abcdefg'
v = test.translate(str.maketrans('acf','123'))
'''
#上面的代码输出结果与下面的一样
test = 'abcdefg'
v1 = str.maketrans('acf','')
v = test.translate(v1)
print(v) 输出:
1b2de3g -
partition / rpartition :以某个指点的元素进行切割字符串,从左边或者右边分为三部份,指定元素为单独一部份左右两边各一份。
def partition(self, *args, **kwargs)
def rpartition(self, *args, **kwargs)例子:
test = 'sbkfjwnkls'
v1 = test.partition('k')
v2 = test.rpartition('k')
print(v1,v2) 输出:
('sb', 'k', 'fjwnkls') ('sbkfjwn', 'k', 'ls') -
☆ split / rsplit:可分割多段,不包含分割的元素,可加参数表分割的次数。(splitlines():根据换行符‘/n’进行分割,括号内加‘True/False’表是否包含换行符。)
def split(self, sep=None, maxsplit=None)
例子:
test = 'sbkfjkwnkls'
v1 = test.split('k',2)
v2 = test.rsplit('k',2)
print(v1,v2) 输出:
['sb', 'fj', 'wnkls'] ['sbkfj', 'wn', 'ls'] -
swapcase:进行大小写的转换。
def swapcase(self, *args, **kwargs)
例子:
test = 'jaCk'
v = test.swapcase()
print(v) 输出:
JAcK -
☆ replace:替换,可指定替换的次数。
def replace(self, old, new, count=None)
例子:
test = 'ABCDABCDABCD'
v = test.replace('AB','aaa',2)
print(v) 输出:
aaaCDaaaCDABCD
二、数据类型基本能用到的几个方法
-
索引:获取字符串中的某个字符。
l例子:
test = 'abcdefg'
v = test[3]
print(v) 输出:
d -
切片:获取方范围内的字符。
例子:
test = 'abcdefg'
v = test[1:3]
print(v) 输出:
bc -
len:获取字符串的长度。
例子:
test = 'abcdefg'
v = len(test)
print(v) 输出:
7 -
while & for 循环:当出现continue,即不再执行以下内容返回循环条件(如加在第六行下,则第七行以下的print语句不执行,循环继续但无结果输出),遇到break时,终止本轮所有循环,进入下一个内容。
例子:
test = '你好啊'
index = 0
while index < len(test):
v = test[index]
index += 1
print(v) 输出:
你
好
啊例子:
test = '你好啊'
for v in test:
print(v) 输出:
你
好
啊 -
range:帮助创建连续的数字,可通过指定步长来创建不连续的数字。
例子:
test = range(0,6,2)
for v in test:
print(v) 输出:
0
2
4
汇总例子:
例子:
test =input('请输入:')
for v in range(len(test)):
print(v,test[v]) 输出:
请输入:你好啊
0 你
1 好
2 啊
三、int 的内置方法:
-
bit_lenght:计算数字的二进制有几位数。
def bit_length(self)
>>> bin(37)
'0b100101'
>>> (37).bit_length()
6......