Python/Pycharm基础教程及python常用快捷键

目录

Python/Pycharm基础教程及python常用快捷键

python常用快捷键

一、输入函数input和输出函数print

二、注释

三、输出文件

四、打印

五、数据类型转换

六、运算符

七、条件表达式

八、循环语句的用法及函数的用法

九、列表的创建

十、列表的查徐

十一、列表的添加

十二、列表的删除

十三、列表的修改


Python/Pycharm基础教程及python常用快捷键

python常用快捷键

ctrl+alt+l:代码格式化
alt+shift+f10:运行代码文件
shift+f10:运行编辑器
ctrl+/:注释行(可注释和取消注释选中所在的行)
ctrl+d:复制行(复制光标所在行的内容到下一行,复制所选中内容到后面)
shift+enter:跳到下一行
ctrl+backspace:删除光标前一个词组
ctrl+deleted:删除光标后一个词组
alt+shift+上下箭头:整行移动
alt+左右箭头:切换程序
ctrl+tab:切换窗口
ctrl+w:选中光标所在的词组
ctrl+alt+g:将下一行与本行合成一行
ctrl+shift+j:将下一行与本行合成一行
ctrl+enter:跳到下一行并换行
shift+f6:重命名文件
ctrl+f4:关闭当前窗口
ctrl+shift+][:选中光标到行末尾/行开头的内容

一、输入函数input和输出函数print

# 输入函数input:input的函数类型为字符串类型str
a = input('请输入一个数:a = ',)
b = int(float(input('请输入一个小数:b = ')))
c = float(input('请输入一个整数:c = '))
d = str(input('请输入一个字符串:d = '))
# 输出函数print
print('a = ',a,type(a))
print('b = ',b,type(b))
print('c = ',c,type(c))
print('d = ',d,type(d))

二、注释

# 单行注释
'''我是
多行
注释'''
"""我是
多行
注释"""

三、输出文件

#将数据输出到文件中
out=open('D:/PyCharm/python练习1/输出文件.txt','a+')
print('作者:吴通才\n时间:2022.01.21',file=out)
out.close()

四、打印

# 打印
name = '张三'
age = '20'
print('name的属性:\nid:',id(name),'\n数据类型:',type(name),'\n值:',name)
print('age的属性:\nid:',id(age),'\n数据类型:',type(age),'\n值:',age)
print('张三今年',age,'岁')
print('张三今年'+age+'岁')   #符号”+“是连接符号

五、数据类型转换

# 数据类型转换
a = 1
b = 2.3
c = '你好!'
d = "python"
print(type(a),type(b),type(c),type(d))  #数据类型
print(float(a)) #int转float
print(str(a))   #int转str
print(int(b))   #float转int

六、运算符

# 运算符的优先级:()>算术运算>位运算>比较运算>布尔运算>赋值运算

# 算术运算符:**,*,/,//,%,+,-(优先级从左到右)
print('————————算术运算————————')
print(2**3)     #幂运算:2^3=8
print(2*3)      #乘法运算:2*3=6
print(10/2)     #除法运算:10/2=5
print(10//3)    #整除运算:10//3=3(3.333取整)
print(10//-3)   #整出运算:10//-3=-4(10/-3=-3.3向下取整得-4)
print(-10//3)   #整出运算:-10//3=-4(-10/3=-3.3向下取整得-4)
print(10%3)     #取余运算:10%3=1(10/3=3余1)
print(10%-3)    #取余运算:10/-3=-3.3,向下取整得-4,10%-3=10-(-3)*(-4)=-2
print(-10%3)    #取余运算:-10/3=-3.3,向下取整得-4,-10%3=-10-3*(-4)=2
print(10+10)    #加法运算
print(100-10)   #减法运算
# 位运算:<<,>>,&,|(优先级从左到右)
print('————————————————————位运算————————————————————')
print(2&3)          #位与运算:相当于与运算,2和3的二进制为010和011,对齐作与运算得010,转为十进制是2
print(2|3)          #位或运算:相当于或运算,2和3的二进制为010和011,对齐作或运算得011,转为十进制是3
print(2<<1,2<<3)    #左移位运算=十进制数*2^移动次数:2<<1=2*2^1=4,2<<3=2*2^3=16
print(2>>1,2>>2)    #右移位运算=十进制数/2^移动次数:2>>1=2/2^1=1,2>>2=2/2^2=0(注意:最小为0)
# 比较运算:>,<,>=,<=,==,!=,is,is not(优先级从左到右)
print('————————————————————比较运算————————————————————')        #True表示真的,False表示假的
print(10>5,10>=5,10<5,10<=5)     #10>5是True,10>=5是True,10<5是False,10<=5是False
a = 1;b = 2;
print(a==b,a!=b)                #==和!=:对象的value(值)比较,a=b为False,a!=b为True
print('a的id(地址):',id(a),'\nb的id(地址):',id(b))
print(a is b,a is not b)        #is和is not:对象的id比较
# 布尔运算:and,or,not,in,not in(优先级从左到右,结果只有True和False)
print('————————布尔运算—————————')
print('————————— 布尔值为False的对象 ————————')
print('False为',bool(False))
print('None为',bool(None))
print('数值0为',bool(0))
print('空字符串为',bool(''))
print('空列表为',bool([]))
print('空列表为',bool(list()))
print('空元组为',bool(()))
print('空元组为',bool(tuple()))
print('空字典为',bool({}))
print('空字典为',bool(dict()))
print('空集合为',bool(set()))
a,b = 1,2

# and同并且,全真才真,一假则假
print('————————and运算———————————')
print(a==1 and b==2)    #True and True --> True
print(a==1 and b!=2)    #True and False --> False
print(a!=1 and b==2)    #False and True --> False
print(a!=1 and b!=2)    #False and False --> False
# or同或者,全假才假,一真则真
print('————————or运算———————')
print(a==1 and b==2)    #True and True --> True
print(a==1 and b!=2)    #True and False --> True
print(a!=1 and b==2)    #False and True --> True
print(a!=1 and b!=2)    #False and False --> False

# not同非
print('——————not运算———————')
m = True;n = False;
print(not(m),not(n))
print('————————————————————in和not in运算————————————————————')
print('py' in 'python')      #py在python里面——>True
print('n' not in 'python')   #n不在python里面——>False

# 赋值运算:=,+=,-=,*=,/=,//=,%=
print('——— 赋值运算:=,+=,-=,*=,/=,//=,%= ————')
x = 1;print(x)
a1 = a2 = a3 = 2;print(a1,a2,a3)        #链式赋值
b1,b2,b3 = 10,20,30;print(b1,b2,b3)     #系列解包赋值
c1 = 1;c1 += 1;print(c1)    # +=运算符
c2 = 10;c2 -= 2;print(c2)   # -=运算符
c3 = 2;c3 *= 3;print(c3)    # *=运算符
c4 = 6;c4 /= 2;print(c4)    # /=运算符
c5 = 7;c5 //= 2;print(c5)   # //=运算符
c6 = 7;c6 %= 2;print(c6)    # %=运算符

七、条件表达式

#使用条件表达式进行比较:格式:a if y else b,如果满足y则执行a,否则执行b
num1 = 2
num2 = 5
print(str(num1) + '大于等于' + str(num2) if num1 >= num2 else str(num1) + '小于' + str(num2))

八、循环语句的用法及函数的用法

print('——————————— for-in循环 ——————————')
## for-in循环
for f in 'python':print(f)
for f1 in range(5):print(f1)
for _ in range(3):print('python')   # ”_“可以表示自变量
print('—————————— break函数 ——————————')
## break函数:满足就退出当前循环,进入下一个循环
for b in range(3):
    key = input('请输入密码:')
    if key=='8888':
        print('密码输入正确')
        break   #满足条件,退出当前的if循环,进入下一个else循环
    else:
        print('密码输入不正确')

print('————————— continue函数 ——————————')
## continue函数:满足就退出当前循环,不在执行
for b in range(3):
    key = input('请输入密码:')
    if key!='8888':
        print('密码输入不正确')
        continue    #满足条件,重复执行当前的if循环
    else:
        print('密码输入正确')

print('———————— else语句 ————————')
## else语句可与if、while、for语句搭配使用
print('———————— for-else ————————')
for e1 in range(3):
    k1 = input('请输入密码:')
    if k1!='8888':
        print('密码输入不正确')
        continue    #满足条件,重复执行当前的if循环
    else:
        print('密码输入正确')
else:
    print('您已经输入三次错误密码')

print('———————— while-else —————————')
e2 = 0
while e2 < 3:
    k2 = input('请输入密码:')
    if k2 == '8888':
        print('密码输入正确')
        break    #满足条件,退出当前的if循环
    else:
        print('密码输入不正确')
    e2 += 1
else:
    print('您已经输入三次错误密码')

print('——————— if-else ——————————')
e3 = int(input('请输入100以内的数:'))
if e3 < 50:
    k3 = input('恭喜你,获得一次输入密码的机会,请输入你的密码:')
    if k3 == '8888':
        print('密码输入正确')
    else:
        print('密码输入不正确')
else:
    print('抱歉,你没有获得输入密码的机会')

print('—————————— range函数 ——————————')
## range函数:生成指定序列
# 第一种创建方法:range(stop),创建一个[0,stop)之间,步长为1的序列
L1 = range(10);print(L1);print(list(L1))
# 第二种创建方法:range(start,stop),创建一个[start,stop)之间,步长为1的序列
L2 = range(3,10);print(L2);print(list(L2))
# 第三种创建方法:range(start,stop,step),创建一个[start,stop)之间,步长为step的序列
L3 = range(1,20,2);print(L3);print(list(L3))
# 用in和not in判断序列中是否存在指定数
print(3 in L1,3 not in L1)
print('a' in L1,'a' not in L1)

print('—————————— pass函数 ——————————')
## pass函数:不做任何操作的占位符
p1 = 1;p2 = 2;
if p1 >= p2:pass
else:pass

九、列表的创建

# 方法一:使用方括号[]
L = [1,2,3,'a','name',"b","你好,mt"]
print(L)
# 方法二:使用内置函数list()
L1 = list([1,2,3,'a','name',"b","你好,mt"])
print(L1)
L2 = list(range(5))
print(L2)

十、列表的查徐

### 列表的查询:列表元素的序号从0开始

print('—————————单个元素查询———————————')
## 单个元素的查询
# 方法一:查询列表中指定元素的位置
L = list(range(5,11))
print('原列表L',L)
L1 = L.index(7)     #查询元素为7所处的序号
print('位置',L1)     #输出方法一
print(L.index(7))   #输出方法二

# 方法二:查询列表中指定位置的元素
LL = list(['a','b','c'])
print('原列表LL',LL)
L2 = LL[2]           #查询序号为2的元素
print('元素',L2)      #输出方法一
print(LL[2])         #输出方法二

## 多个元素的查询:格式:列表名[起点:终点:步长]——>列表名[start:stop:step]
print('—————————多个元素查询—————————————')
L3 = [1,2,3,4,5,6]
print(L3[1:4:1],'\t',L3[1:4:2])
print(L3[-4:-1:1])  #有负号则序号从右以-1开始数,此时的范围是[-4,-1),步长为1
print(L3[0:-2:1])   #有负号则序号从右以-1开始数,此时-2对应的正序为4,则范围是[0,4),步长为1
# 省略某个属性
print(L3[::])   #默认起点,则序号为0;默认终点,则为列表长度;默认步长,则为1
print(L3[:4:2]) #默认起点为0
print(L3[2::2]) #默认终点
print(L3[::2])  #默认起点和终点

#等等……

十一、列表的添加

L = ['a',1]
LL = [6,'a']
print('原列表L=',L,'\n列表LL=',LL)

# 方法一:append函数,在列表末尾添加对象元素,对象可以是列表、元素
L.append(3);print('添加元素后,',L)       #添加元素后, L=['a', 1, 3]
L.append(LL);print('添加列表LL后',L)     #添加列表LL后 L=['a', 1, 3, [6, 'a']]

# 方法二:extend函数,在列表末尾添加元素
L.extend(LL);print('添加列表LL后',L)     #添加列表LL后 L=['a', 1, 3, [6, 'a'], 6, 'a']

# 方法三:insert函数,在指定位置插入对象:格式:L.insert(位置,插入的对象)
L.insert(2,2);print('插入一个元素',L)     #插入一个元素 ['a', 1, 2, 3, [6, 'a'], 6, 'a']
L.insert(2,LL);print('插入一个对象',L)    #插入一个对象 ['a', 1, [6, 'a'], 2, 3, [6, 'a'], 6, 'a']

十二、列表的删除

# remove函数:删除指定元素
print('——————— remove函数删除 ————————————')
L = list(range(7));print('原列表',L)   #原列表 [0, 1, 2, 3, 4, 5, 6]
L.remove(3);print('删除后',L)          #删除后 [0, 1, 2, 4, 5, 6]

# pop函数:删除指定位置的元素
print('——————— pop函数删除 —————————')
L.pop(3);print('删除后',L)     #删除后 [0, 1, 2, 5, 6]

# 用空表替换
L[0:2]=[];print('替换后',L)   #替换后 [2, 5, 6]

# clear函数:清空列表
print('——————— clear函数删除 —————————')
L.clear();print('删除后',L)    #删除后 []

# del函数:删除列表后会报错

十三、列表的修改

L = list(range(6));print('原列表',L)
print('———————— 单个修改 ———————————')
L[4] = 'a',10;print('修改后',L)    #修改后 [0, 1, 2, 3, ('a', 10), 5]

print('—————————— 多个修改 ———————')
L[0:2] = ['a','b',9,8];print('修改后',L)   #修改后 ['a', 'b', 9, 8, 2, 3, ('a', 10), 5]