Python3之基础语法

1、编码

默认情况下,Python3源码文件以UTF-8编码,所有字符串是Unicode字符串

 

2、标识符

  • 第一个字符必须是字母或者下划线“_”

  • 标识符其他部分可由字母、下划线和数字组成

  • 标识符区分大小写

3、保留字

Python保留字即关键字,不能用于任何标识符名称。Python标准库提供了keyword模块,输出当前版本的所有关键字

import keyword

keyword.kwlist

结果输出:

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

4、注释

  • Python中单行注释以#开头

  • 多行注释可以用多个#号,也可以用'''或"""

# 这是第一个注释

#这是第二个注释

'''
这是第四个注释
这是第五个注释
'''

"""
这是第六个注释
这是第七个注释
"""

5、多行语句

Python使用反斜杠(\)实现多行语句,在[]、()和{}中的语句,不需要使用反斜杠

total = number_one + \
        number_two + \
        number_three

6、字符串

  • python中单引号和双引号效果相同

  • 使用三引号("""或''')可以指定一个多行字符串

  • 转义符 '\'

  • 反斜杠可以用来转义,使用r可以让反斜杠不发生转义,如 r"this is a line with \n" 则\n会显示,并不是换行

  • 字面意义级联字符串,如"this " "is " "string"会被自动转换为this is string

  • 字符串可以用 + 运算符连接在一起,用 * 运算符重复

  • Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始

  • 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]

str='Runoob' 
print(str) # 输出字符串 
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符 
print(str[0]) # 输出字符串第一个字符 
print(str[2:5]) # 输出从第三个开始到第五个的字符 
print(str[2:]) # 输出从第三个开始后的所有字符 
print(str * 2) # 输出字符串两次 
print(str + '你好') # 连接字符串 
print('------------------------------') 
print('hello\nrunoob') # 使用反斜杠(\)+n转义特殊字符 
print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义

 输出结果为:

RunoobRunoo
R
noo
noob
RunoobRunoobRunoob你好
------------------------------
hello
runoob
hello\nrunoob

7、等待用户输入

input实现用户输入

input('请输入一个数字:')

8、sys.stdout,sys.stdin,sys.stderr使用

  • sys.stdout和print

在python中调用print时,事实上调用了sys.stdout.write(obj+'\n'), print将需要的内容打印到控制台,然后追加一个换行符,以下两行代码等效:

sys.stdout.write('hello' + '\n')
print('hello')
  • sys.stdin和input

      sys.stdin.readline( )会将标准输入全部获取,包括末尾的'\n',因此用len计算长度时是把换行符'\n'算进去了的,但是input( )获取输入时返回的结果是不包含末尾的换行符'\n'的。

      因此如果在平时使用sys.stdin.readline( )获取输入的话,不要忘了去掉末尾的换行符,可以用strip( )函数(sys.stdin.readline( ).strip('\n'))或sys.stdin.readline( )[:-1]这两种方法去掉换行。

import sys
str1 = input("请输入字符1:")
str2 = sys.stdin.readline()      #不能直接填写说明文字
str3 = sys.stdin.readline().strip()   #使用strip()函数移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
print('str1长度:',len(str1))
sys.stdout.write(str(len(str2)) + '\n')
print('str3长度:',len(str3))

输出:

请输入字符1:qq
qq
qq
str1长度: 2
3
str3长度: 2
  • sys.stderr 目的就是返回错误信息 

10、print输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

x="ab"
y="cd"
# 换行输出
print( x )
print( y )

print('----分割线-----')
# 不换行输出
print( x, end=" " )
print( y, end=" " )

输出:

ab
cd
----分割线-----
ab cd

11、import和form...import

在 python 用 import 或者 from...import 来导入相应的模块。

将整个模块(somemodule)导入,格式为: import somemodule

从某个模块中导入某个函数,格式为: from somemodule import somefunction

从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc

将某个模块中的全部函数导入,格式为: from somemodule import *

导入sys模块:

import sys 
print('================Python import mode==========================') 
print ('命令行参数为:') 
for i in sys.argv: 
  print (i) 
  print ('\n python 路径为',sys.path)

导入 sys 模块的 argv,path 成员:

from sys import argv,path # 导入特定的成员 
print('================python from import===================================') 
print('path:',path) # 因为已经导入path成员,所以此处引用时不需要加sys.path

12、python命令行参数

  • Python 提供了 getopt 模块来获取命令行参数

  • Python 中也可以所用 sys 的 sys.argv 来获取命令行参数:

           sys.argv 是命令行参数列表。

           len(sys.argv) 是命令行参数个数。

           注:sys.argv[0] 表示脚本名。

import sys
print('参数个数为: ' , len(sys.argv) , '个参数。')
print ('参数列表:', str(sys.argv))
print (sys.argv[0])

 输出:

参数个数为:  1 个参数。
参数列表: ['E:/Mine/Android/IDEAWorkspace/PythonProject/Practice/practice_1.py']
E:/Mine/Android/IDEAWorkspace/PythonProject/Practice/practice_1.py

 

 

发布了8 篇原创文章 · 获赞 0 · 访问量 148
展开阅读全文
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览