python基础

1.变量

无需申明变量类型,直接 变量名 = 值
整数 : a = 123
字符串: str = "abc" , 或者str = 'abc'
字符串转义 \n \r , 禁止转义 r'\n\r\abc'
换行 print(
''' line1
line2
line3
....
''' )

2 字符串

ord() : 获取字符串的整数(Unicode码)表示 ,ord('A') = 65
.encode(): 获取字符串编码结果,'中文'.encode('utf-8')获取“中文“的utf-8 编码结果
.decode() : 解码b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8' , errors='ignore') = "中文" , errors='ignore' 忽略错误
len() : 计算字符串长度 , len('ABC') = 3
replace() : 替换 Abc.replace('A' , 'a') = abc;
== 字符串比较直接用 == , <= , >= ...
.format() : 格式化1 "小明成绩{}分,上涨了{}%".format(90 , 10) ;
% :格式化2 "小明成绩%s分,上涨了%s %%" %(90 , 10) ; 这里两个%%前一个是转义

3.集合数据结构

list : 列表

names = ['zhangsan' , '李四' , ‘傻子’] ;
len(names) 
3
names[0]
zhangsan 
names[-1]      #最后一个元素
傻子
names[-2]     #倒数第二个元素
李四

names.append('wangwu')  ###添加一个元素
names
 ['zhangsan' , '李四' , ‘傻子’ , 'wangwu']

names.insert(2,'zhao_liu')  #添加一个索引2 的元素zhao_liu
names
['zhangsan' , '李四' ,'zhao_liu' ,  ‘傻子’ , 'wangwu']

names.pop() 弹出(删除)最后一个元素
name.pop(3) 弹出(删除)索引为3最后一个元素

tuple : 可理解为不可变list

t = (1 ,2)
t
(1,2)
t =(1,) # 定义一个元素的tuple需要在后面加一个逗号
t
(1,)

dict:字典 , 对应其他语言的map

scores = ['zhangsan' : 50 ,  '李四' :60 ,'傻子' :0 ]
scores['zhangsan']   #没有找到对应key 报错
50
scores.get('zhangsan')  #没有找到对应key 返回None
50 
scores.pop('zhangsan') :  #删除zhangsan
'zhangsan' in scores #是否存在KEY
False 
scores['张三'] = 100  # 添加key

set 集合

s = set([1, 2, 3]) 
{1,2,3}
s = set([1, 1, 2, 2, 3, 3])
{1,2,3}  #元素不可重复
s.add(4)  #add 添加元素
s.remove(4)  #remove 移除元素
s1 & s2  #s1 和s2 的交集
s1 | s2   #s1 和 s2 的并集

4.if条件判断

if  条件1 :
  代码块1
elif 条件2
  代码块2
else:
  代码块

python 使用的是缩进规则, 不像其他大部分语言用{}花括号将执行的代码块包围 , 可以认为:后面缩进的代码块就是被{}花括号包起来的代码块 。

5.循环

for..in..循环 : 类似java 的 foreach 循环 , 不过python 的 in 后面可以是很多类型(迭代器)

nams = ['zhangsan' , '李四' ,'wangwu']
for name in names
  print(name) ;

for i in range(101)
  sum = sum + x ;
 print(sum) ;

while循环

 while 条件:
     循环体

break :跳出循环
continue 跳过本次循环接下来的逻辑,继续下次循环

6.函数

help(abs) : 交互命令下可用help(函数名)查询函数的帮助信息
常用内置函数 :abs() 求绝对值 ,max(1,4,6) 求最大值 ,min(2,3,1)求最小值
int("232")强转int , float("12.3")强转浮点,str("23")强转字符串,bool(1)强转boolean

定义函数:python定义函数恐怕是最精简的的定义方式了, 无需定时返回类型,参数类型
语法

def voidName(x , y):
    函数体
#如果需要在同文件夹下使用其他python文件中的函数
from 文件名 import 函数名

python 函数还有一个区别其他语言特殊的功能可以返回多个值

def manyVal(x, y):
    return x+y , x-y ;
add,sub = manyVal(1,2);
print(manyVal(1,2)) ;
#(3,-1)  #返回多个值其实就是返回一个tuple数据类型

函数参数 : python 的行参与java 语言也是区别比较大的

1.可以给参数设置默认值,这样当扩展函数的参数可以不修改原来的调用,java则需要靠重载实现

def void1(x  , y = 2):
      print("x=" , x , "y=", y) ;
void1(1) ;
x = 1 , y = 2 

2.多个默认值, 指定参数值 , 如果有多个默认值, 想跳过中间某个值的设参,需要指定参数名

def void2(x, y= 2 , z= 7):
  print("x=" , x , "y=", y , "z= " , z) ;
void2(1 , z=10); 
x=1, y=2,z=10 

3.多个参数 ,可以在参数前面加一个* ,类似java 的 参数后面加...

def void3(*x):
     print("x===",x);
# 实际把参数封装成tuple , 类似java 将参数封装成数组
void3(1,2,3,5) ;
(1,2,3,5)     
x = (1,3,4,5,3)  
#如果要将集合类型的参数传给没个值 ,前面也加一个*
void3(*x);  
(1,2,3,5) 

4.扩展参数,可以传入函数体原来不存在的函数,将会把传入的值封装成dist

def void4(x , y , **z):
  print("x = " ,x ,"y=",y , "z=",z)
# t 和 o 实际形参中并不存在 ,z 在这里变成一个dist(map) ,将t和o 装到sist 里面 
void4(1 ,8 , t = 3 , o= 8) ; 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 集合: 无序的, 不可随机访问的, 不可重复的集合 集合分为可变集合和不可变集合 定义 可变集合定义方式:{元素1...
    伯wen阅读 418评论 0 0
  • python转义字符:\ python用r' '表示' '默认不转义示例:print(r'\\\t\\')结果:\...
    bjchenli阅读 521评论 0 0
  • Python3笔记 | 第二课:循环、字符串、列表 程序三大执行流程 while循环 while 判断条件 :条件...
    DoubleProgram阅读 937评论 0 0
  • 数据类型 整数 Python的整数没有大小限制 浮点数 Python的浮点数也没有大小限制,但是超出一定范围就直接...
    折叠小猪阅读 275评论 0 0
  • 直接运行.py文件 (Mac和Linux下,且正常运行为$ python hello.py)1,在.py文件的第一...
    SScience阅读 210评论 0 0