python入门

python入门

1、输入与输出

1、输入
input:获取键盘输入的内容(为str类型)

a=input("   ")
a=int(input("	")) #可强制转换input类型

定义变量(用来存储数据可以被覆盖):
变量名 = 数据
或变量名a,变量名b= 数据a,数据b
eg:a=10
变量命名规则
变量必须以字母(a-Z)或下滑线_开头
变量区分大小写
关键字不用作为变量名

2、输出
python输出可使用print( ),内容可加在括号里。
Python 可以使用单引号(’)、双引号(")、三引号(’’’ 或 “”")来表示字符串。
也可print(变量名,变量名)
占位符:%(%后面跟变量类型)

%s字符串  %d十进制的数字类型  %f单精度浮点型(带小数)

换行:\n

print('变量名:{}'.format(变量名)) # 也可这样输出

3、数据类型
在这里插入图片描述

print(type(a)) #输出a的数据类型
a=()  #元组类型
print(type(a))
b=[]  #列表类型
print(type(b))
c={}  #字典类型
print(type(c))

对于列表增加:可用append() 方法
其用于在列表末尾添加新的对象。
使用语法:list.append(obj)
obj – 添加到列表末尾的对象。
例:aList = [123, ‘xyz’, ‘zara’, ‘abc’];
aList.append( 2009 );

对于字典增加或替代:
1:通过键=值的方式进行添加。如果键存在,则会将旧的值进行覆盖,如果不存在则添加。例:
a = {
“name”:“sue”,
“Age”:33
}
a[“Age”]=22
print(a)
2:使用update()添加将新字典中所有的键值对全部添加到旧字典对象上。如果key重复,则覆盖。例:
a = {
“name”:“sue”,
“Age”:33
}
b = {
“Age”:22
}
a.update(b)
print(a) # {‘name’: ‘sue’, ‘Age’: 22}

2、基本操作运算符

(1)算数运算符

符号作用
+加法运算
-减法运算
*乘法运算
**指数(2**3=8)
%取余
/除法运算(结果保留小数点后面的数)
//除法运算(结果只保留整数)

(2)比较运算符

符号名称
==等于
!=不等于
>大于
<小于
>=大于或等于
<=小于或等于

(3)逻辑运算符

符号实例
andx and y
orx or y
notnot x

优先级
()>not>and>or
(4)赋值运算符

符号作用
=赋值(将等号右边的值赋给左边变量)
+=加法赋值(c+=a等效于c=c+a)
-=减法赋值(c-=a等效于c=c-a)
*=乘法赋值(c*=a等效于c=c*a)
/=除法赋值(c /=a等效于c=c/a)
%=取余赋值(c%=a等效于c=c%a)
**=指数赋值(c**=a等效于c=c**a)
//=取整赋值(c//=a等效于c=c//a)

3、语句

1、if-else

import random #导入random代码工具箱
num=random.randint(0,10000) #random.randint()表示直接调用工具箱中的randint()函数,random.randint(0, 10000)表示生成0~10000之间的随机整数
if num > 5000:
    print("特等奖")
    if num >= 9000:
        print("奖金1000*1")
    else:
        print("奖金800*1")
elif 3000 < num <= 5000:
    print("一等奖\n奖金500*1\n")
else:
    print("二等奖")
    if num > 1500:
        print("奖金300*1")
    else:
        print("奖金100*1")
#猜拳小游戏
import random
person=int(input('请出拳:[0:石头 1:剪刀 2:布]:'))
computer=random.randint(0,2)
if person==0 and computer==1: #多条件
	print("你赢了")
elif person==1 and computer==2:
	print("你赢了")
elif person==2 and computer==0:
	print("你赢了")
elif person==computer:
	print('平手')
else:
	print('你输了')

2、while循环

a=1   	#初始值
while a<=100:	#条件表达式
	print(a)
	a+=1	#变量的自增自减(若没有这个将导致死循环)
#打印九九乘法表
row=1
while row<=9:
	col=1
	while col<=row:
		print("%d*%d=%d"%(row,col,row*col),end=" ")  #end=" "意思是末尾不换行,加空格
		col+=1
	print( ) #控制换行
	row+=1
#用户登陆程序(while——else语句)
i=0
while i<=2:
	account=input('请输入账号:')
	password=input('请输入密码:')
	if account=='kx' and password=='123':
		print('恭喜您登录成功')
		break
	else:
			i+=1
			a=3-i
			print('登录失败')
			print('您还有%d次登录机会'%a)
else:
	print('您的账号已被系统锁定')

3、for循环

#for 临时变量 in 容器
txt='时光鸡'
for a in txt:
	print(a)
#range函数可以生成一个数据集合列表
#range(起始,结束,步长)
#for a in range(3)即:从0到3,不包括3,即0,1,2
#for a in range(1,3)即:1.2
for a in range(1,100,2)
print(a)
#求1到100的累加和
sum=0
for a in range(1,101):
	sum+=a
	print(sum)
#打印九九乘法表
for i in range(1,10):
	for j in range(1,i+1):
		print("%d*%d=%d"%(i,j,i*j),end=' ')
	print( ) #控制换行
#用户登陆程序(for——else语句)
account='kx'
password='123'
for i in range(3):
	a=input('请输入账号:')
	b=input('请输入密码:')
	if account==a and password==b:
		print('恭喜您登录成功')
		break
	else:
		print('登录失败')
		 print("您还剩余%d次机会" %(2-i))
else:
	print('您的账号已被系统锁定')
	

4、关键字
break
满足条件直接结束本层循环
continue
结束本次循环,继续执行下一次循环
注:这两个关键字只能用于循环中

sum=0
for a in range(1,101):
	sum+=a
	if sum>=100:
		break # 结束循环
print("sum=%d"%sum)
#求奇数项
for a in range(1,100):
	if a%2==0:
		continue
	print(a)

4、字符串

# in 判断对象是否存在结果是一个bool值
a='人生'
print('人' in a) 
函数
capitalize()	#首字母变大写
endswith/starswith()	#判断是否以('')结束/开始
find()	#查找x在序列对象中的位置,如果没有找到就返回-1
index()	#查找x在序列对象中的位置,如果没有就会报错
isalnum()	#判断是否是字母和数字
isalpha()	#判断是否是字母
isdigit()	#判断是否是数字
islower()	#判断是否是小写
join()	#循环取出所有值用xx去连接
lower/uper()	#大小写转换
swapcase()		#大写变小写,小写变大写
lstrip/rstrip/strip()		#移除左/右/两侧空格
split()		#切割字符串
title()		#把每个单词的首字母变成大写
count()		#统计出现的次数
使用方法:b=a.capitalize()
		 b=a.find('x')

索引从0开始(从左开始)或从-1开始(从右开始)
1、切片
切片:可以根据下标来获取序列对象的任意[部分]数据。
使用语法:[起始下标:结束下标:步长](步长默认为一,从左到右,左闭右开)

a='python'
print(a[0:3:1])
print(a[2:])	#第三个字符到最后
print(a[::-1])	#倒叙输出

2、列表
list是一种有序的数据集合,用[ ]来表示列表类型,数据项之间用逗号分割(支持索引和切片)

a=[1,2,'汉字']
print(len(a))	#len函数可以获取到列表对象中的数据个数
print(type(a))
a=['abcd',123,12.23,'read',True]
print(a)
print(a[0])	#输出第一个元素
print(a*2)	#输出两次列表中数据
a[0]=12		#修改第一个数据
del a[0]	#删除列表中第一个数据(也可批量删除)

a=list(range(10))	#强制转换为list对象
append( )	#在列表后面追加( )
insert(插入下标位置,'所要插入的数据')		#插入操作
extend()		#拓展,批量追加添加
remove( )	#移除指定的元素
pop()	#移除所选索引值的元素
sort()	#列表排序
index()	#查找元素对应索引值

3、元组
元组在创建后不能做任何修改(当元组只有一个元素时,要数据项加上逗号,不然解释器会当作整形来处理)

a=('abce',123,12.23,'汉字',[11,22,33])
print(a)
for item in a:
	print(a,end=' ')
print(a[2:4])
print(a[::-1])
print(a[::-2])	#每隔两个取一次
print(a[-2:-1:])	#倒着取下标  为-2到-1区间的
a[4][0]=55	#可以对元组中的列表数据修改
print(a)

4、字典
字典是由键值对组成的集合,且不是序列类型,没有下标概念,是无序的键值集合。

#添加字典数据
dictA={}	#空字典
dictA['a']=10	#key:value
dictA['b']=20
print(dictA)
dictB={'a':'10','b':'20'}
print(len(dictA))	#获取数据项长度(以逗号分割)
print(dictA['a'])	#通过键获取对应的值
dictA['a']=30	#修改键对应的值
dictA.update({'a':40})	#可以添加或更新
print(dictA.keys())	#获取所有的键
print(dictA.values())	#获取所有的值
print(dictA.items())	#获取所有的键和值
#删除操作(通过指定键删除)
del dictA['a']
dictA.pop('a')
#排序操作
print(sorted(dictA.items(),key=lambda d:d[0]))

5、函数

1、函数的调用
定义:
def+关键字+小括号+冒号+换行缩进+代码块

def 函数名():
      函数代码块
def a():
    print('rand')
    print('i')
a() 	#函数调用
def a(name,height,weight,hobby,pro): #形式参数
    # 函数代码块
    print('%s的身高是%f' %(name,height))
    print('%s的体重是%f' %(name,weight))
    print('%s的爱好是%s' %(name,hobby))
    print('%s的专业是%s' %(name,pro))
# 调用带参数的信息
printInfo('李',180,70,'体术','忍者') #实参

2、函数参数
(1)必选参数


```python
def sum(1,2): #形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的.
    sum=a+b
    print(sum)
   sum(1,2) 	#1、2实际参数:实参,实实在在的参数,是实际占用内存地址的
 # sum(15) #不能这样写的,

(2)默认参数

def sum1(a,b=40,c=90):
     print('默认参数使用=%d'%(a+b))
sum1(10) #在调用的时候如果未赋值,就会用定义函数时给定的默认值

(3) 可变参数(元组类型)

def getComputer(*args): 
     '''
     计算累加和
    :param args: 可变长的参数类型
    :return:
    '''
    for item in args:	#把字典中每对key和value组成一个元组,
   					 	#并把这些元组放在列表中返回。
        result+=item
        pass
    print('result=%d'%result)
    pass

getComputer(1)
getComputer(1,2)
getComputer(1,2,3)
getComputer(1,2,3,4,5,6,7,8)
# 关键字可变参数(字典类型)
# ** 来定义
# 在函数体内 参数关键字是一个字典类型 key是一个字符串
def keyFunc(**a):
    print(a)
# 调用
# keyFunc(1,2,3) 不可以传递的
dictA={"name":'kx',"mm":123}
keyFunc(**dictA)
# keyFunc(name='peter',age=26,)# 也可这样直接调用
# keyFunc() ## 也可这样直接调用
#两种一起
 def complexFunc(*args,**kwargs):
     print(args)
     print(kwargs)
complexFunc(1,2,3,4,name='kx')
complexFunc('密码'=123)

3、函数返回值

#函数执行完以后会返回一个对象,如果在函数的内部有return 就可以返回实际的值,否则返回None
def sum(a,b)
	sum=a+b 
	return sum  #将返回值赋给其他变量
print(sum(10,30))

4、函数嵌套

def fun1():
    print("--------------fun1 start-------------------")
    print("--------------执行代码省略-------------------")
    print("--------------fun1 end-------------------")
    pass

def fun2():
    print("--------------fun2 start-------------------")
    # 调用第一个函数
    fun1()
    print("--------------fun2 end-------------------")
    pass

fun2() #调用函数2

5、函数的基本类型
(1)无参数,无返回值,一般用于提示信息打印.

def myprint():
	print("-"*20)

(2)无参数,有返回值,多用在数据采集中,比如获取系统信息。

def mycpu():
	#获取cpu信息
	return info

(3)有参数,无返回值,多用在设置某些不需要返回值的参数设置。

def set(a):
	pass

(4)有参数,由返回值,一般是计算型的,需要参数,最终也要返回结果。

def cal(a,b):
	c=a+b

6、局部变量和全局变量
局部变量:就是在函数内部定义的变量(作用域仅仅局限于函数内部)

def printInfo():
    # name='kxr' #局部变量
    print('{}'.format(name))
    pass
def TestMethod():
    name='cd'
    print(name)
    pass
printInfo()
TestMethod()
#作用:为了临时的保存数据 需要在函数中定义来进行存储

全局变量:就是在函数外部定义的外部。

pro='信息与计算科学' #全局变量
name='kx' #局部变量优先级大于全局变量
def printInfo():
    # name='peter' #局部变量
    print('{}.{}'.format(name,pro))
    pass
def TestMethod():
    name='cd'
    print(name,pro)
    pass
    #如果在函数的内部要想对全局变量进行修改的话 对于不可变类型【str 元组 number】必须使用global 关键字进行声明

7、匿名函数

lambda  #创建匿名函数(没有名字的函数)
#仅能封装有限逻辑
#格式:lambda 参数1,参数2,参数3:执行代码语句
#例:用lambda表达式计算两个数的和(自带return)
test=lambda x,y:x+y
test(1,3)
test(4,5)
#普通函数
def test(x,y):
    return x+y
#也可通过变量调用匿名函数
a=lambda x,y:x+y
print(a(12,21))

8、三元运算

b if a else c
#若满足条件a,则输出b,否则输出c
#例
test=67
print('成绩合格'if a>=60 else'成绩不合格'#也可和匿名函数一起用
test=lambda x,y:x if x>y else y
print(test(12,21))

9、递归函数

#优点:逻辑清晰
#缺点:容易导致内存资源紧张
#例:求10!
def a(n):
  if n==1:
     return 1
  else:
     return n*a(n-1)
print(a(10))

(注:本人小白一个,文章部分文字摘自于
作者:求知讲堂(老师真的讲的特别详细,推荐大家去看一看)
https://www.bilibili.com/video/BV1vA411b7Rn?p=1
出处: bilibili
仅供个人学习)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值