python基本使用

安装python/PyCharm

mac 大部分情况已经安装好了python

xx@B-3DERQ05P-1947 ~ % python --version
Python 2.7.16
xx@B-3DERQ05P-1947 ~ % python2 --version
Python 2.7.16
xx@B-3DERQ05P-1947 ~ % python3 --version
Python 3.8.9
xx@B-3DERQ05P-1947 ~ % python

WARNING: Python 2.7 is not recommended.

下载pycharm
https://www.jetbrains.com/pycharm/download/?section=mac

各idea 激活: https://www.ajihuo.com/

基本用法

类型判断 type, isinstance

a1 = 3
a2 = 44.32
a3 = False
a4 = 99

#在Python中,数字数据类型有int、float、bool(布尔型)、complex(复数)
print( type(a1),type(a2),type(a3))

#使用isinstance()函数来判定,结果返回True代表你认为的数据类型是正确,False就代表错误。
print(isinstance(a1 ,type(a1)))

运算符

# 在Python中,运算符有:+、-、*、/、%、**、//(加、减、乘、除、取模、次方、整除)
print( a1 + a2)

print( a2 - a1)

print(3 ** 2) #9

print(100 / 4)  #24.75
print(100 // 4) #24

字符串

s1 = "hello,world"

#截取
print(s1[0:3]) #hel
print(s1[0:-3]) #hello,wo
print(s1*2) # 输出2次

print(s1[3]) #索引

复合数据类型

在Python中,复合数据类型分别有三种:Tuple(元组)、Set(集合)与List(列表)

list列表
l1=[1,2,3,4]
l2=["li","ming","xx","jke"]
print(l1,l2) #[1, 2, 3, 4] ['li', 'ming', 'xx', 'jke']

print(l1[:2])  # 输出:[1, 2]
print(l1[0:2:3]) #在给定的列表上进行切片操作,切片操作的语法是[start:stop:step],因为步长是3,所以在跳过3个元素后,达到了索引3,此时超过了结束索引2,因此结果列表只包含了元素1。所以,print(l1[0:2:3])的输出将会是[1]。

l1[1:1]='A','B','C'  #修改列表中指定数据,即可以直接修改[start:step]
l1[0]='S'
print(l1) # ['S', 'A', 'B', 'C', 2, 3, 4]
print(len(l1)) #7
Tuple:元组
#list是[] ,tuple 是()
t1 =("A","B")
tv1 ="a","b"

print(t1,tv1) #('A', 'B') ('a', 'b')
print(t1+tv1) #('A', 'B', 'a', 'b')

#元组也和字串符一样支持+和*运算符,*重复输出
print(t1*2)
for c in t1 : print(c) # 有:

#list转tuple
t2 = tuple(l1)
print(t2)
set集合
#Set是一种无序不重复元素的序列 ,用{} 创建
s1 = {1,2,3,4,1,2,3,4,1}
print(s1) #{1, 2, 3, 4}

s2= set('abcdabcdabc')
print(s2) #{'b', 'c', 'd', 'a'}
print('a' in s2 , 'f' in s2) #True

#Set也支持数学运算符运算
s3={'b','d','f'}
print(s2 - s3) #{'a', 'c'}
print(s2 | s3) #{'a', 'd', 'b', 'c', 'f'}
print(s2 & s3) #
print(s2 ^ s3) #{'a', 'f', 'c'}

#使用关键字add或update来添加新的元素
s3.add('g')
s3.update('h')
print(s3) #{'f', 'd', 'g', 'b', 'h'}

#使用关键字remove,discard或pop(pop会随机删除某些元素)删除某些元素
s3.remove('f')
print(s3)
s3.discard('h')
print(s3)
s3.pop()
print(s3)

#使用函数clear()来进行全部删除
s3.clear()
print(s3)

dictionary 字典

#创建一个空字典需要用大括号{},在字典中每一个值对用冒号,且每个值需要逗号(,)分隔
d1 ={}
print( type(d1))
d2 = {"a":"aa","b":"bb"}
print(d2)
print(d2['a'])
#打印一个不存在的key,报错无返回
# print(d2['x'])
#修改字典内的数据
d2["c"] ="cc"
print(d2["c"])
#清除字典 clear() 或者删除del
d2.clear()
print(d2)
#删除后,报错无返回
del d2
#print(d2)

输入&输出

i1 = input("请输入数字")
print(i1)

i2 = input("请输入运算符号")
print(i2)

i3 = input("请输入数字")
print(i3)

if (i2 == '+'):
    print(float(i1)+float(i3))
elif(i2 == '-'):
    print(float(i1) - float(i3))
elif (i2 == '*'):
    print(float(i1) * float(i3))
elif (i2 == '/'):
    print(float(i1) / float(i3))
#a = (str(input()))
#b = (list(input()))     #创建一个空列表
#c = (tuple(input()))    #创建一个空元组
#d = (set(input()))      #创建一个空集合

判断语句

#if、if…else、if…elif…else
#while
#if and
#if or

if(int(i1)>0 and i3!= 0):
    print( int(i1) / int(i3))

if(int(i1)>0 or i3 > 0):
    print( int(i1) - int(i3))

操作运算符

#< :小于,用于判断变量是否小于常量
#> : 大于,用于判断变量是否大于常量
#>= :大于或等于,用于判断变量是否大于或等于常量
#<= :小于或等于,用于判断变量是否小于或等于常量
#== :等于,用于判断两个常量是否相等
#!= :不等于,用于判断两个常量是否不等于

循环

#循环语句有for和while,没有do …while循环语句
for i in l1:
    print(i)

s="abcdefgh"
# 带序号的打印
for i in range(len(s)):
    print(i ,":" , s[i]) # python 中直接用, 而不是+
for i in s:
    print(i)

b = True
while b:
    i1 = int(input("输入数字:"))
    print(i1)
    if(i1 <0):
        b = False

函数

def add(a,b):
    return  a + b

print(add(3,4))

模块化编程

与java中的import功能类似,在python中,一个.py文件就是一个模块。

使用import方式进行导入时,只能跟包名或者模块
使用from…import可以导入包,模块,函数,变量

包模块的导入

#创建包
new python package
xian/test
new python file 
myMath

from xian.test  import  myMath # 导入包.模块
print(myMath.add(2,3)) 

相同包下面引用其他模块

  import  myMath

包模块函数的导入

from xian.test.myMath  import  add
print(add(2,3))

安装第三方模块

pip install 模块名

内置模块

模块解释
sys与Python解释器及其环境操作相关的标志库
time提供与时间相关各种函数库
os访问操作系统服务功能的标准库
calendar与日期相关各种标准库
urllib用与读取来自网上(服务器)的标准库
json使用josn序列化和反序列化对象
re在字符串中执行正则表达式匹配和替换
math提供标准算术运算的标准库
decimal进行精确控制运算精度,有效数位四舍五入操作的十进制运算
logging灵活记录事件、错误、警告和调试信息等日志信息功能

例如NumPy、Pandas、Matplotlib等,这些库可以让我们更加方便地进行数据分析和可视化。

文件操作

ref: https://blog.csdn.net/Q0717168/article/details/131148232
os库是Python内置的标准库,包含了上百个函数,常用路径操作、进程管理、环境参数等几类,os.path子库是以path为入口,用于操作和处理文件路径

import os


#with open(os.path.abspath("../../demos/out/temp_/s.sh"), encoding="UTF-8") as file_Obj:
#    data = file_Obj.read()
#    print(data)


#with open(os.path.abspath("../../demos/out/temp_/py.txt"),"w",encoding="UTF-8") as write_file:
#    str2 = "hello python !"
#    write_file.write(str2)


#copy
import shutil
shutil.copy(os.path.abspath("../../demos/out/temp_/py.txt"),os.path.abspath("../../demos/out/temp_/py2.txt"))

shutil.move("cy_text.txt","testdir")                  # 移动cy_text.txt文件到testdir目录下
send2trash.send2trash("test123.txt")              # 将test123.txt放到回收站

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值