python基础(一):
运算符:
算术运算:
除了基本的+ - * / 以外,还需要知道 : // 为取整除 返回的市商的整数部分 例如: 9 // 2 ---> 4 , 9.0 // 2.0 --->4.0
% 为取余数 返回的是除法的余数 没有余数则为0 例如: 3 % 3 ---> 0 , 有余数:6 % 3 --->2
逻辑运算符:
and , or , not
比较运算符:
== 判断两个数是否相等 , != 判断两个数是否不相等 , > , < , >= ,<=
成员运算符:
list_1 =[1,2,3,4,5]
in :
1 in list_1 ---> True
not in :
6 in list_1 ---> False
格式化字符 .format():
控制精度:
pi = 3.1415926
print("圆周率精确到小数点后3位为:{0:.3f}".format(pi))
圆周率精确到小数点后3位为:3.142
填充字符:
w_1 = "word"
"{0:-^30}".format(w_1) ---> '-------------word-------------'
if 判断 和 while for 循环:
while循环一般通过数值是否满足来确定循环的条件
for循环一般是对能保存多个数据的变量,进行遍历
list_2 = [1,2,3,4,5,66] for i in list_2: print(i)
乘法表()
i = 0 while i <=9: m = 1 while m <= i: print('%d*%d=%d'%(m,i,m*i),end=' ') m +=1 print('') i+=1
猜拳
1 import random 2 3 player = input('请输入:剪刀(0) 石头(1) 布(2):') 4 5 player = int(player) 6 7 computer = random.randint(0,2) 8 9 if ((player == 0) and (computer == 2)) or ((player ==1) and (computer == 0)) or ((player == 2) and (computer == 1)): 10 print('获胜,哈哈,你太厉害了') 11 elif player == computer: 12 print('平局,要不再来一局') 13 else: 14 print('输了,不要走,洗洗手接着来,决战到天亮')
break 和 continue
continue的作用:用来结束本次循环,紧接着执行下一次的循环
字符串,字典,列表,元组:
切片:
-
-
切片的语法:[起始:结束:步长]
- 要注意选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。
a = "abcdef" a[:3] 'abc' a[::2] 'ace' a[5:1:2] '' a[1:5:2] 'bd' a[::-2] 'fdb' a[5:1:-2] 'fd'
如有字符串mystr = 'hello world itcast and itcastcpp'
,以下是常见的操作
<1>find
检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
mystr.find(str, start=0, end=len(mystr))
<2>index
跟find()方法一样,只不过如果str不在 mystr中会报一个异常.
mystr.index(str, start=0, end=len(mystr))
<3>count
返回 str在start和end之间 在 mystr里面出现的次数
mystr.count(str, start=0, end=len(mystr))
<4>replace
把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr.replace(str1, str2, mystr.count(str1))
<5>split
以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串
mystr.split(str=" ", 2)
<6>capitalize
把字符串的第一个字符大写
mystr.capitalize()
<7>title
把字符串的每个单词首字母大写
<8>startswith
检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False
mystr.startswith(obj)
<9>endswith
检查字符串是否以obj结束,如果是返回True,否则返回 False.
mystr.endswith(obj)
<10>lower
转换 mystr 中所有大写字符为小写
mystr.lower()
<11>upper
转换 mystr 中的小写字母为大写
mystr.upper()
<12>ljust
返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
mystr.ljust(width)
<13>rjust
返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
mystr.rjust(width)
<14>center
返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
mystr.center(width)
<15>lstrip
删除 mystr 左边的空白字符
mystr.lstrip()
<16>rstrip
删除 mystr 字符串末尾的空白字符
mystr.rstrip()
<17>strip
删除mystr字符串两端的空白字符
a = " itcast "a.strip()'itcast'
<18>rfind
类似于 find()函数,不过是从右边开始查找.
mystr.rfind(str, start=0,end=len(mystr) )
<19>rindex
类似于 index(),不过是从右边开始.
mystr.rindex( str, start=0,end=len(mystr))
<20>partition
把mystr以str分割成三部分,str前,str和str后
mystr.partition(str)
<21>rpartition
类似于 partition()函数,不过是从右边开始.
mystr.rpartition(str)
<22>splitlines
按照行分隔,返回一个包含各行作为元素的列表
mystr.splitlines()
<23>isalpha
如果 mystr 所有字符都是字母 则返回 True,否则返回 False
mystr.isalpha()
<24>isdigit
如果 mystr 只包含数字则返回 True 否则返回 False.
mystr.isdigit()
<25>isalnum
如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False
mystr.isalnum()
<26>isspace
如果 mystr 中只包含空格,则返回 True,否则返回 False.
mystr.isspace()
<27>join
mystr 中每个字符后面插入str,构造出一个新的字符串
mystr.join(str)
列表的常见操作:
访问列表中的值:
通过索引来取值:
list_1=['a','b','c','d','e'] print(list_1[1]) --->'b'
对列表内的数据进行更新:
(直接对列表内的数据进行覆盖就是更新)
list_1=['a','b','c','d','e'] list_1[0] ='pp' print(list_1)
--->['pp', 'b', 'c', 'd', 'e']
删除列表内的元素:
可以使用 del 语句来删除列表的的元素
list_1=['a','b','c','d','e'] del list_1[0] print(list_1)
--->['b', 'c', 'd', 'e']
序号 | 函数 |
---|---|
1 | len(list) 列表元素个数 |
2 | max(list) 返回列表元素最大值 |
3 | min(list) 返回列表元素最小值 |
4 | list(seq) 将元组转换为列表 |
包含以下方法:
序号 | 方法 |
---|---|
1 | list.append(obj) 在列表末尾添加新的对象 |
2 | list.count(obj) 统计某个元素在列表中出现的次数 |
3 | list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
4 | list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 |
5 | list.insert(index, obj) 将对象插入列表 |
6 | list.pop([index=-1]]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
7 | list.remove(obj) 移除列表中某个值的第一个匹配项 |
8 | list.reverse() 反向列表中元素 |
9 | list.sort(cmp=None, key=None, reverse=False) 对原列表进行排序 |
10 | list.clear() 清空列表 |
11 | list.copy() 复制列表 |
这里是一个可能有用的通过字典解析实现的小技巧: 交换字典的 键和值。
>>>a_dict = {'a': 1, 'b': 2, 'c': 3}
>>>{value:key for key, value in a_dict.items()}
{1: 'a', 2: 'b', 3: 'c'}
增删改查:
-
<1>修改元素
-
<2>添加元素:
-
使用 变量名['键'] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素
-
-
<3>删除元素:
-
del删除指定的元素 : del字典名['键名']
-
del删除整个字典: del字典名
-
clear清空整个字典
-
-
<4>len():
-
测量字典中键值对的个数 len(dict)
-
-
<5>keys:
-
返回一个包含字典所有key的==列表==dict.keys()
-
-
<6>values:
-
返回一个包含左右value的列表
-
-
<7>items:
-
返回一个包含所有(键,值)元祖的列表
-
-
<8>has_key:
-
dict.has_key(key)如果key在字典中,返回True,否则返回False
-
字典的遍历:
-
通过for ... in ...:的语法结构,我们可以遍历字符串、列表、元组、字典等数据结构。
-
<1> 遍历字典的key(键)
-
for key in xx:
<2> 遍历字典的value(值)
for value in xx:
<3> 遍历字典的项(元素)
for items in xx:
<4> 遍历字典的key-value(键值对)
for key,value in xx:
-
-