最好有点c++基础来看,,每天都更新一篇吧
这一篇是一些基础东西
- 1.运算符
2.变量
3.基本输入输出
4.字符串
5.列表
6.元组
7.字典
8.集合
9.简单的说下循环啥的
1.运算符
特别的
a / b:为浮点数,a // b 为整数,丢弃小数部分 a**b 为a的b次方
还有 c // = a,c ** = a;
python 中没有 &&, ||, !
分别为 如 if(a and b) ,if(a or b) if( not a),
and ,or , not来代替
其中还有 in 和 not in
可以在字符串,列表或元组序列中使用 直接查找是否存在
还有is 和 is not 顾名思义
2.变量
不必声明变量类型 直接 比如 x = 3即可
改变的时候也可以直接转换
- x = 'a'
- y = 'b'
- print(x)
- print(y)
- x = 1
- y = 2
- print(x)
- print(y)
3.基本输入输出
输入用input
- x = input("x:")
- y = input("y:")
- #print(x * y) 则错误 ,因为输入的内容是以字符串的形式返回的,应该转换成int型
- print(int(x) * int(y))
输入不区别单引号和双引号
print('hello\nrunoob') # 使用反斜杠(\)+n转义特殊字符
print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义"""
或者 \n 写成 \\n 其中 \\ 表示\
- # 换行输出
- print( x )
- print( y )
- print('---------')
- # 不换行输出
- print( x, end=" " )#表示末尾为空格
- print( y, end=" " )
- print()'''
print用,连接字符串和变量
4.字符串
- str = "wangpeibing"
- print(str)
- print(str[0:-1])
- print(str[0])
- print(str[2:5])#截取
- print(str[2:])#第二个字符到最后
- print(str*2)#输出两次
- print(str+"你好")#连接
可以有查找
- if("wang" in str):
- print(1)
字符串的格式化:就是类似于c语言的表达形式
- print("My name is %s and weight is %d kg!" % ('peibing', 21) )
5.列表
类似c语言数组,有下标。特征是中括号,也有切片,,类似字符串
- a = [1,2,3]
- b = [4 ,5 ,6]
- print(a + b)#连接
- print(len(a))#长度
- print(a*4)
del a[0]#删除第一个元素 - print(a[-1])#倒数第一个
- print(3 in a)
- for i in a :#循环迭代输出
- print(i)
还可以嵌套
- c = [a,b] #嵌套 类似于二维数组
- print(c)
- print(c[1][0])
一些常用方法
- max(a)#列表最大值
- min(a)#列表最小值
- list.append(1)#a的末尾添加1
- list.count(1)#a中统计出现1次数
- list.index(1)#从列表中找出某个值第一个匹配项的索引位置
- list.insert(下标,obj)#将对象插入列表,obj自己定义
- list.pop([index=-1]])#移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
- list.remove(obj)#移除列表中某个值的第一个匹配项
- list.reverse()#反向列表中元素
- list.clear()#清空列表
- list.copy()#复制列表
sort,sort 方法不适合 int 和 str 类型的比较。
- #list.sort(cmp=None, key=None, reverse=False)#对原列表进行排序
- #reverse = True 降序, reverse = False 升序(默认)
- # 获取列表的第二个元素
- def takeSecond(elem):#函数
- return elem[1]
- # 列表
- random = [(2, 2), (3, 4), (4, 1), (1, 3)]
- # 指定第二个元素排序
- random.sort(key=takeSecond)
- # 输出类别
- print('排序列表:', random)
- list=[ ["1","c++","demo"],
- ["1","c","test"],
- ["2","java",""],
- ["8","golang","google"],
- ["4","python","gil"],
- ["5","swift","apple"]
- ]
- list.sort(key=lambda ele:ele[0])# 根据第1个元素排序
- print(list)
- list.sort(key=lambda ele:ele[1]) #先根据第2个元素排序
- print(list)
- list.sort(key=lambda ele:ele[1]+ele[0]) #先根据第2个元素排序,再根据第1个元素排序
- print(list)
6.元组
元组和列表差不多 特点是不能修改,小括号啊
只有一个元素要加,
- >>>tup1 = (50)
- >>> type(tup1) # 不加逗号,类型为整型
- <class 'int'>
-
- >>> tup1 = (50,)
- >>> type(tup1) # 加上逗号,类型为元组
- <class 'tuple'>
删除的话要么全部删除,要不就不能删
其他的方法都和列表 差不多
list(元组) 将元组转化成列表 tuple(列表) 将列表转化成元组
7.字典
理解为c++中的map。特点是大括号,每一个键都对应这键值
- dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
-
- print ("dict['Name']: ", dict['Name'])
- print ("dict['Age']: ", dict['Age'])
- dict['Name'] = 'peibing' #修改相应的键值
- del dict['Name'] # 删除键 'Name'
- dict.clear() # 清空字典
- del dict # 删除字典
注意 键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行,
一些方法
求长度 len(dict) 为3
显示 str(dict)
判断类型type(dict)
8.集合
和c++的set差不多,主要是去重
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
- a = {'abracadabra'}#这时候set里面有一个字符串的值
- print (type(a))
- print(a)
- a = set('abracadabra')#这时候给他规定为这个set里依次存放了这个字符串的字符
- print (type(a))
- print(a)
- >>> a = set('abracadabra')
- >>> b = set('alacazam')
- >>> a
- {'a', 'r', 'b', 'c', 'd'}
- >>> a - b # 集合a中包含元素
- {'r', 'd', 'b'}
- >>> a | b # 集合a或b中包含的所有元素
- {'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
- >>> a & b # 集合a和b中都包含了的元素
- {'a', 'c'}
- >>> a ^ b # 不同时包含于a和b的元素
- {'r', 'd', 'b', 'm', 'z', 'l'}
- >>>thisset = set(("Google", "Runoob", "Taobao", "Facebook"))
- >>> thisset.pop()
- 'Facebook'
- >>> print(thisset)
- {'Google', 'Taobao', 'Runoob'}
9.简单的说下循环啥的
有while 和for两个,基本用法都和c差不多,包括break和continue,先看while
- i = 1
- while i < 10:
- i += 1
- if i%2 > 0:
- continue
- print i
-
- i = 1
- while 1: # 循环条件为1必定成立
- print i # 输出1~10
- i += 1
- if i > 10: # 当i大于10时跳出循环
- break
有c++基础的应该不难看懂,注意这个没有大括号,是通过缩进和一些 : 来判别的
接下来是for循环
可以是
- fruits = ['banana', 'apple', 'mango']
- for fruit in fruits: # 第二个实例
- print (当前水果 :', fruit)
也可以是
- fruits = ['banana', 'apple', 'mango']
- for index in range(len(fruits)):
- print ('当前水果 :', fruits[index])
range返回一个序列的数。
- for num in range(10,20): # 迭代 10 到 20 之间的数字
- for i in range(2,num): # 根据因子迭代
- if num%i == 0: # 确定第一个因子
- j=num/i # 计算第二个因子
- print ('%d 等于 %d * %d' % (num,i,j))
- break # 跳出当前循环
- else: # 循环的 else 部分
- print (num, '是一个质数')
else if 在python中写成elif