一、Python的基本输入与输出语句
(一)输出语句
print()
示例:
print('你好,Python')
print(4+5)
a = 10
print(a)
输出的内容可以是字符串,变量,算式等。
(二)输入语句
input();括号中可以输入提示语。可以用变量接收输入的内容,且无论输入的是什么类型的数据,此变量都会被强制转换成字符串类型的数据。
示例:
input = input('请输入一个数字:')
print(input)
二、Python数据类型之数字的表示
(一)整数
Python中整数使用int数据类型表示,称为整型,与C语言中整型只能表示到32767不同,Python中整型所能表示的数的范围很大。比如说:
a = 199979868726518798732534
print('a的数据类型为',type(a))
输出结果为:
代码中type()可以查看变量的数据类型。
(二)小数
Python中,小数用两种数据格式表示,单精度浮点数(float)和双精度浮点数(double)。单精度浮点数可以保留小数点后16位,双精度浮点数可以保留小数点后超级多位。溢出会按照四舍五入的方式进行保存。
(三)复数
复数有实部和虚部组成,写成 x+yj 的形式。x ,y是实数,j相当于数学中的i。
三、Python数据类型之字母
(一)字符串
简单的说就是单引号引起来的一个或者多个字母数字特殊符号组成的集合。比如说 ‘ajfsyuaf321538`’;
str = '你好abc!??——+'
print(type(str))
(二)字符串获取单个元素以及切片
1、获取特定单个元素
通过索引。方向可以为从左向右,索引从0开始。也可以从右向左索引从-1开始。
str = 'hello python'
print(str[0])# 取得'h'
print(str[-1])# 取得'n'
2、字符串切片
按照特定的规则获取多个元素。请看代码(str为上例代码中的str):
# 切片包括前面索引对应元素不包括后面索引对应元素
print(str[0:5])# 取得'hello'
print(str[-6:-1])#取得'pytho'
#如果:后没有不写,表示无限取,直到没有元素可取。
print(str[-6:])# 结果为:python
下面代码中第二个:后的数字表示步长,步长默认为1。表示每一个元素都被取到。步长大于1时表示每隔步长减一个元素取一个元素。
str = 'hello python'
print(str[0::2])# hlopto
(三)运算符在字符串中的应用
1、*x:把字符串复制x次
str = 'abcd'
print(str*2) #abcdabcd
str2 = str*2
print(str2)#abcdabcd
2、str1+str2:把字符串str1和str2拼接在一起
str1 = 'abcd'
str2 = 'edfg'
str3 = str1+str2
print(str1+str2)
(四)判断字符串是否含有某一字符
1、in 如果字符串中含有,返回true
str = 'abcd'
print('a' in str ) # True
2、not in 如果字符串中不含有,返回true
str = 'abcd'
print('e'not in str)# True
(五)字符串在print时的格式化
在print字符串的时候,可以在字符串中使用%s来挖空,然后在字符串结束后加上%(),括号内按照顺序填上和字符串中的%s个数一样多的元素,元素之间用逗号隔开。请看示例代码:
name = 'xiong'
age = 21
sex = '男'
high = 175
weight = 56
print('我姓%s,性别%s,今年%s岁,身高%scm,体重%skg。'%(name,sex,age,high,weight))
最后输出内容为:我姓xiong,性别男,今年21岁,身高175cm,体重56kg。
当然严格意义上来说,上面输出语句中不应该全部使用%s,例如年龄、身高和体重处。但是Python3以后的版本不纠结(之前的我就不知道了),给它它就认。另外字符串的格式化也可以使用format方法,但在这里不说。详情点:
四、Python数据类型之列表
(一)定义列表的两个方式
列表名 = [元素,元素,……](用逗号分开)
列表中的元素可以是Python中允许的其他数据类型。列表索引从0开始,通过索引可以获取相应的元素。
list = ['abc',5,[6,8],1]
print(list[0]) #结果:abc
(二)列表的切片
方式与字符串的切片是一样的。
(三)列表—增
append():把某一元素追加到列表的尾部;
insert():把元素插入到某一特定的位置;
extend():把另一个列表拼接到当前列表后面;
num1 = [1,2,3]
num2 = [5,6,7]
num1.append(4)
print('追加4以后的num1',num1)
num2.insert(3,8)
print('插入8以后的num2',num2)
num1.extend(num2)#extend将直接改变num1
print('拼接了num2后的num1',num1)
# 输出结果
# 追加4以后的num1 [1, 2, 3, 4]
# 插入8以后的num2 [5, 6, 7, 8]
# 拼接了num2后的num1 [1, 2, 3, 4, 5, 6, 7, 8]
(四)列表—删
del :知道索引用这个方法。比如说:del num[1]
remove():不知道索引但知道元素名用这个,如果列表中有多个同名的元素,则删除第一个匹配到的。比如说:num2.remove(5)
pop():只知道索引用这个:比如说:num1.pop(2)
names = ['xiaoming','xiaohuang','xianghong','xiaobai','xiaohei','xiaoming']
names.remove('xiaoming')
print('remove后',names)
del names[3]
print('del后',names)
names.pop(3)
print('pop后',names)
# 输出结果
# remove后 ['xiaohuang', 'xianghong', 'xiaobai', 'xiaohei', 'xiaoming']
# del后 ['xiaohuang', 'xianghong', 'xiaobai', 'xiaoming']
# pop后 ['xiaohuang', 'xianghong', 'xiaobai']
(五)列表—改
两步。一找到要替换的元素;二赋新值。
names = ['xiaoming','xiaohuang','xianghong','xiaobai','xiaohei','xiaoming']
names[0] = 'daming'
print(names)
# 结果为['daming', 'xiaohuang', 'xianghong', 'xiaobai', 'xiaohei', 'xiaoming']
(六)列表—查
1、count():统计某一元素在列表中出现的次数;
2、index():获取某一元素的索引;列表中存在多个同名元素,返回匹配到的第一个元素的索引。
3、in 查询列表中是否有某一元素;
str = ['a','b','e','a','d','a','e']
print(str.count('e'))
print(str.index('b'))
print('l' in str)
# 输出结果:
# 2
# 1
# False
(七)列表—其他操作
1、copy()复制列表
2、sort()对列表进行排序,默认升序。Python3中,列表元素的数据类型一致时才能用这个方法。在括号中设置reverse = True 可以降序排序。如果是字符,则按照ASCII的大小排序。
3、len(list):得到列表的元素个数
4、max(list):得到列表中元素的最大值;min(list)与max相反;
5、list.reverse():将列表元素反序
num = ['5','3','1','2','6','4','7']
num_copy = num.copy()#复制
print(num_copy)
num.reverse()#反序
print(num)
num.sort()#排序
print(num)
num.sort(reverse=True)#反向排序
print(num)
print(max(num),min(num),len(num)) # 输出最大最下和元素个数
# 输出结果:
# ['5', '3', '1', '2', '6', '4', '7']
# ['7', '4', '6', '2', '1', '3', '5']
# ['1', '2', '3', '4', '5', '6', '7']
# ['7', '6', '5', '4', '3', '2', '1']
# 7 1 7