选择结构
if 表达式A:
语句块A
elif 表达式B:
语句块B
……
else:
语句块N
eg:
source = float(input('please input a number'))
if source >= 90:
grade = 'A'
elif source >= 80:
grade = 'B'
elif source >= 70:
grade = 'C'
else:
grade = 'D'
print('等级为{}'.format(grade))
if的嵌套
source = float(input('please input a number'))
if source >= 60:
if source >= 90:
grade = 'nice'
else:
grade = 'qualified'
else:
grade = 'No'
print('成绩为{}'.format(grade))
循环结构
while语句:
while 表达式:
语句块
else:
语句块 #当while表达式为False是执行else语句
eg:
'''求1+2+……+100'''
end = int(input('请输入一个终止值'))
rep = 1
sum = 0
while rep <= end:
sum += rep
rep += 1
print('结果为:',sum)
for语句:
for <取值> in <序列或迭代对象>:
语句块A
else:
语句块B
for循环完了之后如果有else则执行else语句,再结束for循环;如果没有else,则直接结束for循环。
range()函数
功能:从start开始,以step为步长,直到stop为止,依次产生整数序列。
range(start,stop,step)
注意:stop不包括
start省略是默认为0,step省略时默认为1
当有step时,start不可省略。
素数:只能被1和本身整除
n = int(input('shuruyigeshuzi')) for k in range(2,n): if n%k == 0: print('%d不是素数'%n) break else: print('%d是素数'%n)
sort()函数
序列.sort()
功能:排序,默认为升序,即reverse=False;若加入参数reverse,则为降序,即reverse=True
name = []
while True:
str = input('输入一个同学的名字缩写,请以-1结尾')
if str == '-1':
break
else:
name.append(str)
print(name)
name.sort(reverse = False)#升序
print(name)
name.sort(reverse = True)#降序
print(name)
基本输入输出:input() print()
使用import导入模块库。 库名.属性名 即可调用模块属性进行使用。
查看所拥有的属性和方法:dir(对象/模块)
查看帮助:help(对象/模块)
查看类型:type(对象/模块)
通过循环可以访问列表、元组和字典的元素。
列表(list)
把所有元素放入[]中,用逗号隔开,同一个列表中的元素可以是不同的类型。
列表是一种可变序列的类型,可以进行增加、删除、修改等操作。
| 方法 | 解释 |
|---|---|
| list.append(对象) | 在列表尾部追加元素。 |
| list.count(数量) | 返回列表中某元素出现的次数。 |
| list.extend(一列对象) | 在列表的尾部追加另一个列表。 |
| list.index(值,start,stop) | 返回某元素在列表中的位置。 |
| list.insert(索引,对象) | 在列表的某个位置插入一个元素。 |
| list.pop([索引]) | 返回列表中索引位置的元素,并删除该元素,省略参数则是指列表尾部位置。 |
| list.remove(值) | 删除列表中的指定元素,若有多个,则删除第一个。 |
| list.reverse() | 将列表中元素的顺序颠倒。 |
| list.sort(reverse=True) | 将列表中的元素按升序排列,若是reverse=False,则按降序排列。 |
| del 列表名 | 删除一个实列对象 |
x = [1,2,3,4,1,5]
y = [2,3,4,4]
#list.append(对象)
x.append(6)
print(x)
#list.count()
print(x.count(1))
#list.extend()
x.extend(y)
print(x)
#list.index()
print(x.index(4))
#list.insert()
x.insert(2,7)
print(x)
#list.pop()
x.pop()
print(x)
#list.remove()
x.remove(7)
print(x)
#list.reverse()
x.reverse()
print(x)
列表的切片
用于截取列表中的任何部分以获得一个新的列表,也可以进行元素值的修改。
列表名[start:stop:step]
start:默认为0;stop:结束位置默认为列表的长度,不包含该位置的元素;step:步长,默认为1。
元组(tuple)
把所有元素放入()中,用逗号隔开。一个元组的元素可以是不同类型。
元组是不可变序列,不可增加也不可以删除元素,可以用元组来保存一些固定的值。
注意:创建只包含一个元素的元组时,元素后面要加一个“,”,未加则视为一个括号表达式。
x = (1, 2, 3, 4, 5)
x = (1,)
访问元组中的元素,同列表一样,通过下标和切片进行访问。
x = (1, 2, 3, 4, 5)
print(x[0])
元组的切片同列表的切片用法一样。
字符串
用单引号/双引号/三引号 引出的字符序列,字符串属于不可变序列。
三引号一般使用于在多行字符串中。
转义字符:
| 字符 | 解释 |
|---|---|
| \n | 换行 |
| \t | 制表符 |
| \r | 回车 |
| ' | 字符串中的单引号 |
| \ | 字符串中的\ |
| " | 字符串中的双引号 |
| \ddd | 3位八进制对应的字符 |
| \xhh | 2位十六进制对应的字符 |
字符串的运算:
使用+ * 进行运算
+:连接两个字符串
*:将字符串重复n次
sentence = 'abc'+'bcd'
print(sentence) #abcbcd
str = 'abc' * 3
print(str)#abcabcabc
string.strip():去除字符串首位的空格、\n、\r、\t,如有指定,则去除字符串首尾指定的字符。
len():返回字符串的长度。
字典
用{}将所有元素括起来,用逗号分隔。字典是无序的,访问元素是通过“键”实现,字典中的键不能重复。每个元素都是“键:值”对形式存在。
dict = {'a': 1, 'b': 2, 'c': 3}
print(dict)
修改字典元素的值
dict = {'a': 1, 'b': 2, 'c': 3}
dict['a'] = 2
新增元素,直接将赋值给一个新的键,就添加了一个元素。
dict = {'a': 1, 'b': 2, 'c': 3}
dict['d'] = 4
删除元素/整个字典
dict = {'a': 1, 'b': 2, 'c': 3}
del dict['a']
del dict
字典的操作方法:
dict.clear( ):清楚字典
dict.copy( ):复制字典
dict.popitem( ):从字典中删除任一元素,并返回它
可以使用dir(dict)查看字典相关的属性和方法。
常量
执行中值不变的量,例如78,25,89为数值常量,‘python’为字符串常量,python内部还建有一些常量。
- None:没有值的对象。
- True、False:逻辑常量。
- python中任何空值都是为逻辑假,其余是为真。
布尔型可以当作特殊的整型,True为1,False为0。
True+True #1
复数型
包括实部和虚部的数据
3+4j