python常识

IDLE是一个python的shell,“shell”是指文本交互。

缩进使用tab

tab也可以提示要输入的信息

python变量不需要声明

python是没有大括号的 用tab缩进来表示大括号

运行中输入IDLE

小程序:new file新建窗口

中文符号是不能用的,系统也会给出提示,不用担心打错符号的问题

单引号和双引号是一样用的

bif是指python的

内置函数,如打印,输入等等

dir(__builtins__)显示所有的内置函数

help()可以查找内置函数的说明

print('I love fishc.com ' * 5) 表示打印5次

显示上一条指令是alt+P,可以不停地按P

int(把所有都变成整形)

变量名不能以数字开头

变量区分大小写 要注意检查

输入任何一个量就是隐含了‘print’的意思

 打印‘’要先使用\作为转义字符

在前面添加r会让所有的\失去转义作用

注意不能在文末尾使用\

if 条件 else 这里没有用到括号的

while 不停地循环

and替代c语言中的&

random模块,注意模块不是内置函数哦

引用模块前写

import random

zhi=random.randint(1,10)

 打印多个使用逗号隔开

i=8
print(' '*i,1)

只要大于0就是真值哦

i = 10

while i:

Python3 中,一行可以书写多个语句吗

可以,语句之间用分号隔开即可

Python3 中,一个语句可以分成多行书写吗

 

>>> 3 > 4 and \
1 < 2

>>> ( 3 > 4 and
1 < 2 )

科学计数法的写法非常简略

1500=1.5e3

0.0005=5e-4

字符串没法强行转换成整形

但是数值可以转换成字符串,这也不一定,要分情况的,比如这个变量已经被赋值过就又不可以了

验证是不是这个类型(不知道这个函数有什么实际的用途)

>>> isinstance(60,int)
True

查看变量的类型

>>> type(60)
<class 'int'>

temp=input('type in') 这句话在任何情况下返回的都将会是字符串,因为这个函数的返回值始终是字符串

判断是否属于要求要用这个函数

temp=input('type in')
a=temp.isdigit()
print(a)

返回的是ture和false

s 为字符串

s.isalnum()  所有字符都是数字或者字母,为真返回 True,否则返回 False。

s.isalpha()   所有字符都是字母,为真返回 True,否则返回 False。

s.isdigit()     所有字符都是数字,为真返回 True,否则返回 False。带小数点的是false

s.islower()    所有字符都是小写,为真返回 True,否则返回 False。

s.isupper()   所有字符都是大写,为真返回 True,否则返回 False。

s.istitle()      所有单词都是首字母大写,为真返回 True,否则返回 False。

s.isspace()   所有字符都是空白字符,为真返回 True,否则返回 False。

a+=3是a=a+3

加减乘除都可以

//是地板除法,意思是整数除以整数等于整数,浮点亦然

次幂的表示法是3**

2就是3的平方

先乘除后加减是和小学老师教的是一样的,负号的优先级最大,负号是不用写括号的

and or not 逻辑操作符 在其他语言中这样连用都是非法的,在python中是合法的【   ts】

floor除法原则是一个很申请的东西,反正看不懂

0. Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢?

如果回答是 1.5 那么很遗憾,您受到 C 语言的影响比较大,Python 这里会义无反顾地执行 floor 除法原则,答案是:1.0

短路逻辑:3 and 4 == 4,而 3 or 4 == 3。

int()可以去掉小数点哦

“if year/400 == int(year/400)”

elif就是c中的elseif

悬挂else:if和else的对应关系错误

三元操作符,如果if为假去else后面的值,要不然不变

assert为假时报错,用于设置断点,其他时候应该都没什么用~~

三元表达式是可以这样嵌套的

x,y,z=4,5,6
small=z if (x>=y>z)or(y>x>z) else x if x<=y else y
print(small)

python中的赋值机制非常神奇

x, y, z = z, y, x

这样都行

for循环比C语言更灵活一些

for 目标 in 表达式

循环体

range生成一个列表

list(range)才能生成数组

range(1,10,2),表示1 3 5 7 9

while中可以设置break的

continue 在while和for中使用,跳过本次循环

判断包含关系我只知道字符串的其他的没有试过

while 1:
temp=input('请输入密码')
mima='123'
if temp in mima:
print('包含')

range(10)=range(0,10)=0到9

 降低程序复杂度的基本思路:尽量减少函数嵌套使用,能用变量就用变量

找各位数的技巧:使用循环,每次都找最后一位

c语言中的for(i=0;i<10;i++)和python中的for i in range(0,10)是一样的

在c语言中所有数组的元素必须是同一个类型,但是python中的变量是没有类型的??所以python中是没有数组的,它只有列表,列表中的元素可以鱼龙混杂

member=[1,2,3.4]创建列表

添加列表元素(在最后面)

menber.append()z

member.extend([])可以加多个元素。可以用加号,但是这样操作并不是很规范。

***append和extend在处理(x,y)这样的每个元素都有两个元素的时候,使用前者系统会自动认为每个都添加一个,使用后者会添加成两个,同样的句子list1.extend((x,y))换成前者会有完全不一样的结果

member.insert(1,'新值')表示加在第1个元素后面

从列表中删除元素member.remove(元素具体是什么) 

求列表的长度

len()

打印\n等必须要加单引号

列表中的指定元素是member[第几个]

member.index(i)可以求它是第几个

 del member[第几个]

menber.pop(第几个)也是删除但是有返回值,可以赋值到其他变量,相当于“弹出”了

分片

menber[1:4]查找第一到3个元素,查找后原数组是不变的,注意最后一个数字要往前减1哦

mem=list(range(0,10))

list是一个函数,可以将range放到数组中

分片的步长:虽然感觉用到的机会肯定不会很多

mem=list(range(0,10))
print(mem[1:6:2])

结果是1,3,5

列表的乘法就是往后复制这么多份

列表中的列表使用in是找不到元素的

 dir(list)可以找到和列表有关的所有的内置方法

list6.sort可以对list6排序,用各种各样的方法排序都可以,在数据结构里面有

逆向排序
>>> 列表名.reverse()

列表推导式(List comprehensions)是一个很申请的工具,直接使用for语句,不用append,这绝对是python特有的语法了

>>> list1 = [x**2 for x in range(10)]

>>> list1

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

嵌套列表的用法:

请问如何将下边这个列表的'小甲鱼'修改为'小鱿鱼'?

list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]

list1[1][2][0] = '小鱿鱼'

列表是中括号,元组是小括号

有逗号的就是元组,h = x, y, z 这样就定义了一个元组了

元组和列表的使用:在希望数据永远不会被改变的时候,使用元组

generator:生成器,每次访问得到的值都不一样

posted @ 2020-06-05 10:07  568353087  阅读(150)  评论(0编辑  收藏  举报