变量和常用数据类型
1.变量
定义一个变量储存需要打印的信息:
message="hello,world!"
print(message)
变量的命名和使用
变量的命名规则:
变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头,例如,可将变量命名为message_1,但不能将其命名为1_message。
变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greeting message会引发错误。
不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如print。
变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。
慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。
小练习
1 简单消息: 将一条消息存储到变量中,再将其打印出来。
2 多条简单消息: 将一条消息存储到变量中,将其打印出来;再将变量的值修改为一条新消息,并将其打印出来。
2.Python的五个标准数据类型:
- Numbers(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Dictionary(字典)
a.数字类型
- int(有符号整型)
- long(长整型[也可以代表八进制和十六进制])
- float(浮点型)
- complex(复数)
int | long | float | complex |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32.3e+18 | .876j |
-0490 | 535633629843L | -90. | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2E-12 | 4.53e-7j |
b.字符串
示例: m="abcde"
方法: m.capitalize() #首字母大写 输出:'Abcde'
m.decode() #按指定格式解码,默认Unicode 输出: u'abcde'
m.encode() #按指定格式编码
m.expandtabs() #把字符串 string中的tab符号转为空格,tab 默认8个空格 m='\tabc\t123',m.expandtabs 输出:' abc 123'
m.index(str) #返回str在m中的下标 m.index('b') 输出:1
m.isdigit() #判断是否全是数字,是则返回True 输出:False
m.istitle() #判断首字母是否大写 输出: False
m.ljust(width,str) #返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串 m.ljust(10,'0') 输出:'abcde00000'
m.rjust(width,str) #返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串 m.rjust(10,'0') 输出:'00000abcde'
m.partition(str) #从str出现的第一个位置起,把字符串str分 成 一 个3元素的元组 m.partition('b') 输出:('a', 'b', 'cde')
m.rpartition(str) #最右侧开始,从str出现的第一个位置起,把字符串str分 成 一 个3元素的元组 m="abcefgdcbac" m.rpartition('b') 输出:('abcefgdc', 'b', 'ac')
m.reindex(str) #返回子字符串str在字符串中最后出现的位置 m="this is string example" str="is" m.rindex(str) 输出: 5
m.splitlines() #按每行切割 m="\n123\nabc\n" 输出: ['', '123', 'abc']
m.swapcase() #转换m中的大小写 m="AbcDe" 输出:'aBCdE'
m.upper() #转换m中的小写字母为大写 输出:'ABCDE'
m.lower() #转换m中的大写字母为小写 m="ABCDE" 输出:'abcde'
m.center(width,str) #返回一个以str填充,原字符串居中,总长度为width的新字符串 m.center(10,'-') 输出: '--abcde---'
m.find(str) #检测str是否在 string 中,如果存在则返回最先找到的索引值,否则返回-1
m.rfind(str) #从最右侧开始查找str,如果存在则返回最先找到的索引值,否则返回-1 m='abcdefgdcb' m.rfind('d') 输出:9
m.isalnum() #检测字符串是否由字母和数字组成,如果含有其他字符则返回False m='a b c' m.isalnum() 输出:False
m.isalpha() #检测字符串是否由字母和数字组成,如果含有其他字符则返回False m='a b c' m.isalpha() 输出:False
m.islower() #判断是否全是小写字母 输出:True
m.isupper() #判断是否全是大写字母 输出:False
m.replace(str1,str2,count) #将str1替换成str2,不超过count次,count不输入默认全部替换 m.replace('a','f') 输出: 'fbcde'
m.startswith(str) #检查字符串是否是以str开头,是则返回True,否则返回False。 m.startswith('a') 输出: True
m.endswith(str) #检查字符串是否是以str结尾,是则返回True,否则返回False。 m.startswith('e') 输出: True
m.title() #首字母大写 输出: 'Abcde'
m.zfill(width) #返回长度为width的字符串原字符串str右对齐,前面填充0 输出:'00000abcde'
m.count(str) #统计str的个数 m.count('a') 输出: 1
m.format() #格式化输出字符串 '{0}-{1}-{0}'.format('a','b') 输出:'a-b-a'
m.isspace() #判断m是否是由空格组成 m=" " m.isspace() 输出: True
str.join(m) #以str作为分隔符,将m中所有的元素合并为一个新的字符串 '-'.join(m) 输出:'a-b-c-d-e'
m.split(str) #以str为分割, str不输入默认为空格 m.split('b') 输出:['a', 'cde']
m.strip() #用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列 m.strip('e') 输出:'abcd'
字符串的切片
m='abcde' #字符串索引值默认从0开始计位
m[1:] #从第二个开始往后取 输出:'bcde'
m[-2:] #从右侧取几个 输出:'de'
m[:1] #第一个开始取几个 输出:'a'
m[:-2] #取到索引值为-2 输出:'abc'
m[1:2] #m[1:] 与m[:2]的交集 输出:'b'
m[::-1] #倒序取值 输出:'edcba'
m[::-2] #步长为2倒序取值 输出:'eca'
m[2::-1] #倒序从索引值为2的开始取 输出:'cba'
m[2::1] #从索引值为2的开始取 输出:'cde'
m[:-2:1] #倒序取 2-1 个 输出: 'e'
m[-2::-1] #倒序从第2个开始取 输出:'dcba'
m[:2:-1] #倒序取,取到索引值为2(索引值为2的不取) 输出:'ed'
m[3:2:-1] #m[3::-1] 与m[:2:-1]的交集 输出:'d'
c.列表
示例: list=[1,2,3,4,5]
方法: list.append(obj) #在列表末尾添加新的对象 list.append(6) 打印list 输出:[1, 2, 3, 4, 5, 6]
list.index(obj) #从列表中找出第一次匹配obj的索引位置 list.index(3) 输出:2
list.remove(obj) #从列表中移除obj list.remove(6) 打印list 输出: [1, 2, 3, 4, 5]
list.count(obj) #统计obj的个数 list.count(3) 打印list 输出:1
list.insert(index,obj) #在列表的index(索引值)之前插入obj list.insert(1,7) 打印list 输出:[1, 7, 2, 3, 4, 5]
list.reverse() #将列表进行倒序 list.reverse() 打印list 输出:[5, 4, 3, 2, 1]
list.extend(list1) #将list1加入到list,生成一个新的列表 list1=[6,7,8] list.extend(list1) 打印list 输出:[1, 2, 3, 4, 5, 6, 7, 8]
list.pop(index) #移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 list.pop(3) 打印list 输出:[1, 2, 3, 5]
list.sort(cmp=None,key=None,reverse=False) #对原列表进行排序,reverse=False 升序(默认) list=['d','b','c','a','e'] list.sort() 打印list 输出:['a', 'b', 'c', 'd', 'e']
列表的复制
#浅copy
a=[1,2] b=a a.append(3) 打印b 输出:[1, 2, 3] #错误方法
a=[1,2] b=a[:] a.append(3) 打印b 输出:[1, 2] #正确方法,适用于简单列表,如果列表元素中还存在列表,此方法不适用
#深copy
a=[1,[2]] b=a[:] a[1].append(3) 打印b 输出:[1, [2, 3]] #错误方法
a=[1,[2]] b=copy.deepcopy(a) a[1].append(3) 打印b 输出:[1, [2]] #正确方法
d.元组 #元组对象不可修改(更新,增加,删除元素)
示例:t=(1,2,3,4,5)
方法:t.count(obj) #统计元素个数
t.index(obj) #从列表中找出第一次匹配元素的索引位置
e.字典
示例:dic={"key1":"value1","key2":"value2"}
方法:dic.clear() #清空字典中的元素
dic.get(keyname) #获取字典中key对应的值 dic.get("key1") 输出:'value1'
dic.items() #返回由字典所有键值对构成的列表 输出:[('key2', 'value2'), ('key1', 'value1')]
dic.keys() #返回由字典所有键构成的列表 输出:['key2', 'key1']
dic.values() #返回由字典所有值构成的列表 输出:['value2', 'value1']
dic.setdefault(keyname,default=None) #如果键不存在字典中,将会添加键并将值设为默认值 dic.setdefault('key3','value3') 打印dic 输出:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
dic.viewitems() #返回字典dic的元素视图 输出:dict_items([('key2', 'value2'), ('key1', 'value1')])
dic.copy() #返回字典dic的浅拷贝 #同列表的复制
dic.pop() #如果key在字典dic中,则返回并删除dic[key] dic.pop('key1') 打印dic 输出:{'key2': 'value2'}
dic.update(dic1) #把字典dic1的键/值对更新到dic中 dic1={'key3':'value3'} dic.update(dic1) 打印dic 输出:{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
dic.fromkeys(seq[, value]) #用序列seq中的元素作为键,值全为value(未指定,则默认为None)
dic.popitem() #返回并删除字典dic中的任意一个元素(如果dic为空,则抛出KeyError异常)dic.popitem() 输出:('key2', 'value2') 打印 dic 输出:{'key1': 'value1'}
赠人玫瑰,手有余香,如果我的文章有幸能够帮到你,麻烦帮忙点下右下角的推荐,谢谢!
作者: imcati
出处: https://www.cnblogs.com/imcati/>
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接